很多站长朋友们都不太清楚php表结构类,今天小编就来给大家整理php表结构类,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 PHP根据表结构创建表 2、 php通过pdo连上了sqlite,如何获取所有表及表结构 3、 php如何发送sql语句来改变数据表结构 4、 php有结构体吗 5、 php写函数 根据子类(id)递归查找顶级父类(id) 返回父类名字 (表结构:id name pid) PHP根据表结构创建表从截图来看,主要是编写生成 SQL 语句,如果对 SQL 不太熟,建议方法如下:
1、先使用 mysql 等的数据库管理工具,比如:PhpMyAdmin 、MySQL-Front 等,根据表格建立好数据表、再输入3条以上的记录。
2、导出数据表、记录到 SQL 文件。
生成 sql 脚本文件后,就可以在 php 里读取 sql 文件命令,并执行(或者直接硬编码写)。
php通过pdo连上了sqlite,如何获取所有表及表结构如果想列出该数据库中的所有表,可:.table如果想查看这些表的结构:select * from sqlite_master where type="table";可以看到类似: 默认情况下,不会出现红框中的表头,需要之前设置,命令为:.header on如果只想查看具体一张表的表结构,比如查看emperors表,命令为:select * from sqlite_master where type="table" and name="emperors";另外,也可以这样:sqlite> .schema emperors
CREATE TABLE emperors( id integer primary key autoincrement, name text,dynasty text,start_year text);
php如何发送sql语句来改变数据表结构修改表名:
ALTER TABLE srcRENAME TO dest;
修改列名:
EXEC sp_rename '表名.[原列名]', '新列名', 'column' (Silver Lee实践有效)
修改列的数据类型:
ALTER TABLE tablename MODIFY col VARCHAR2(255);
如果同时需要修改列名和数据类型,则可以先修改数据类型再来修改列名,即执行上述两条sql语句。
增加列:
ALTER TABLE tablename ADD 列名 数据类型
删除列:
ALTER TABLE tablename DROP COLUMN 列名
如果想在test表中增加一个recommend字段,类型为char,字段长度为1,默认值为‘n’,可以采用以下的sql语句:
ALTER TABLE test ADD recommend char(1) DEFAULT 'n'
您也可以用ALTER TABLE命令为已有的数据表新增完整的新数据行,如下所示:
ALTER TABLE MyTable
ADD columnC tinyint NOT NULL DEFAULT 13
GO
php有结构体吗没有,因为php是弱类型语言,如果只是为了返回不同类型的数据用数组就可以了,php的数组是非常强大的,因为是弱类型,所以可以使用任意类型的变量
php写函数 根据子类(id)递归查找顶级父类(id) 返回父类名字 (表结构:id name pid)你这种表结构叫邻接表,查询的方式通过自连接。如
SELECT t1.name AS lev1, t2.name as lev2, t3.name as lev3, t4.name as lev4
FROM Tbname AS t1
LEFT JOIN Tbname AS t2 ON t2.pid = t1.id
LEFT JOIN Tbname AS t3 ON t3.pid = t2.id
LEFT JOIN Tbname AS t4 ON t4.pid = t3.id
WHERE t1.name = 'XXXX'
这种方法的主要局限是你需要为每层数据添加一个自连接,随着层次的增加,自连接
变得越来越复杂,检索的性能自然而然的也就下降了。当然这种结构在查询前必须知道该节点所处的层级,否则无法确定自连接的深度。
邻接表模型的局限性很大,用纯SQL实现有一定的难度。不妨考虑其他模型,比如嵌套模型。
嵌套模型的基本结构是树型结构,SQL检索比邻接表要方便很多。
关于嵌套模型,PHPChina的第一期电子杂志PHPer也有过深入探讨,请参考!
关于php表结构类的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php表结构类 php类的构造方法的详细内容...