重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
MySQL 表栏位属性
成都创新互联公司专注于六安网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供六安营销型网站建设,六安网站制作、六安网页设计、六安网站官网定制、小程序开发服务,打造六安网络公司原创品牌,更为您提供六安网站排名全网营销落地服务。
默认:设置栏位的默认值。
注释:设置任何可选的文本描述当前栏位。
字符集:一组符号和编码。
排序规则:一组在字符集中比对字符的规则。
虚拟类型:选择虚拟列的类型。VIRTUAL 表示当运行命令时才计算该列。PERSISTENT 表示该值被实体地保存在表中,支持MariaDB 5.2 或以上版本。
好比C++中,定义int类型需要多少字节,定义double类型需要多少字节一样,MySQL对表每个列中的数据也会实行严格控制,这是数据驱动应用程序成功的关键。M前言
好比C++中,定义int类型需要多少字节,定义double类型需要多少字节一样,MySQL对表每个列中的数据也会实行严格控制,这是数据驱动应用程序成功的关键。MySQL提供了一组可以赋给表中各个列的数据类型,每个类型都强制数据满足为该数据类型预先确定的一组规则,例如大小、类型及格式。
这里先总结数据类型。MySQL中的数据类型大的方面来分,可以分为:日期和时间、数值,以及字符串。下面就分开来进行总结。
DESC mydb.mytable ;这样可以不?
更详细的,可以用SHOW FULL COLUMNS FROM mydb.mytable ;
MySQL 查看表结构简单命令。
一、简单描述表结构,字段类型desc tabl_name;
显示表结构,字段类型,主键,是否为空等属性,但不显示外键。
二、查询表中列的注释信息
select * from information_schema.columns where table_schema = 'db' #表所在数据库
and table_name = 'tablename' ; #你要查的表
三、只查询列名和注释
select column_name,
column_comment from information_schema.columns where table_schema ='db' and
table_name = 'tablename' ;
四、#查看表的注释
select table_name,table_comment from information_schema.tables where table_schema = 'db' and table_name ='tablename'
ps:二~四是在元数据表中查看,我在实际操作中,常常不灵光,不知为什么,有了解的大侠请留印。
五、查看表生成的DDL show create table table_name;
id可以作为标识,方便表查询;属性则是建表对象所拥有性质,为空或不为空(not null)?选择(check (sex in(‘G’ or‘B’))等等,至于长度则自己根据实际情况看着办就行了。如果是自己写着玩就无所谓了,如果真的是开发,就每个数据属性所代表的性质都要看清楚。
LZ还是看下mysql建表详细说明了,都是这样慢慢过来的。
使用mysql_fetch_field
以下是例子.
mysql_fetch_field() 可以用来从某个查询结果中取得字段的信息。如果没有指定字段偏移量,则下一个尚未被 mysql_fetch_field() 取得的字段被提取。
对象的属性为:
name - 列名
table - 该列所在的表名
max_length - 该列最大长度
not_null - 1,如果该列不能为 NULL
primary_key - 1,如果该列是 primary key
unique_key - 1,如果该列是 unique key
multiple_key - 1,如果该列是 non-unique key
numeric - 1,如果该列是 numeric
blob - 1,如果该列是 BLOB
type - 该列的类型
unsigned - 1,如果该列是无符号数
zerofill - 1,如果该列是 zero-filled
=========
?php
mysql_connect('localhost:3306', $user, $password)
or die("Could not connect: " . mysql_error());
mysql_select_db("database");
$result = mysql_query("select * from table")
or die("Query failed: " . mysql_error());
/* get column metadata */
$i = 0;
while ($i mysql_num_fields($result)) {
echo "Information for column $i:br /\n";
$meta = mysql_fetch_field($result);
if (!$meta) {
echo "No information availablebr /\n";
}
echo "pre
blob: $meta-blob
max_length: $meta-max_length
multiple_key: $meta-multiple_key
name: $meta-name
not_null: $meta-not_null
numeric: $meta-numeric
primary_key: $meta-primary_key
table: $meta-table
type: $meta-type
unique_key: $meta-unique_key
unsigned: $meta-unsigned
zerofill: $meta-zerofill
/pre";
$i++;
}
mysql_free_result($result);
?