php获取数据表字段名,获取数据库所有表名与字段名
1. 获取所有数据库名 : Select Name FROM Master..SysDatabases
2. 获取所有表名 : select name from sysobjects where type='U' XType='U': 表⽰所有⽤户表 ; XType='S': 表⽰所有系统表 ;
3. 获取所有字段名 : Select Name from SysColumns Where id=Objec
1.获取所有数据库名:
Select Name FROM Master..SysDatabases
2.获取所有表名:
select name from sysobjects where type='U'
XType='U':表⽰所有⽤户表;
XType='S':表⽰所有系统表;
3.获取所有字段名:
Select Name from SysColumns Where id=Object_Id('TableName')
php修改数据库内容获取当前数据库表名:
select name from sysobjects where xtype='U'and name<>'dtproperties'
获取当前表的字段名及属性:
select a.name, b.xtype,b.name
from syscolumns a
inner JOIN systypes b
pe=b.xusertype
inner join sysobjects c ON
a.id=c.id pe='U' AND c.name<>'dtproperties' where c.name =表名
或:
SELECT
表名= lorder WHEN 1 THEN c.name ELSE '' END,
序= a.colorder,
字段名= a.name,
标识= CASE COLUMNPROPERTY(a.id,a.name,'IsIdentity') WHEN 1 THEN '√' ELSE '' END,
主键= CASE
WHEN EXISTS (
SELECT *
FROM sysobjects
WHERE xtype='PK' AND name IN (
SELECT name
FROM sysindexes
WHERE id=a.id AND indid IN (
SELECT indid
FROM sysindexkeys
WHERE id=a.id AND colid IN (
SELECT colid
FROM syscolumns
WHERE id=a.id AND name=a.name
)
)
)
)
THEN '√'
ELSE ''
END,
类型= b.name,
字节数= a.length,
长度= COLUMNPROPERTY(a.id,a.name,'Precision'),
⼩数= CASE ISNULL(COLUMNPROPERTY(a.id,a.name,'Scale'),0)
WHEN 0 THEN ''
ELSE CAST(COLUMNPROPERTY(a.id,a.name,'Scale') AS VARCHAR)
END,
允许空= CASE a.isnullable WHEN 1 THEN '√' ELSE '' END,
默认值= ISNULL(d.[text],''),
说明= ISNULL(e.[value],'')
FROM syscolumns a
LEFT JOIN systypes b pe=b.xusertype
INNER JOIN sysobjects c ON a.id=c.id pe='U' AND c.name<>'dtproperties' LEFT JOIN syscomments d ON a.cdefault=d.id
LEFT JOIN sysproperties e ON a.id=e.id lid=e.smallid
ORDER BY c.name, a.colorder
回答者:alby -魔法师 五级2006-7-26 11:51
我到并在ACCESS⾥测试通过了:
在ACCESS⾥,备注类型⽤Memo表⽰,所以改变字段的数据类型为备注的SQL为:ALTER TABLE user ALTER COLUMN userinfo Memo
对了,如果user表有外键,⽽且你要修改的字段就是外键的话,你就不能修改啦!
下⾯给出修改为其它类型的SQL(表为tb,字段为aa):
ALTER TABLE tb ALTER COLUMN aa Byte数字[字节]
ALTER TABLE tb ALTER COLUMN aa Long数字[长整型]
ALTER TABLE tb ALTER COLUMN aa Short数字[整型]
ALTER TABLE tb ALTER COLUMN aa Single数字[单精度
ALTER TABLE tb ALTER COLUMN aa Double数字[双精度]
ALTER TABLE tb ALTER COLUMN aa Currency货币
ALTER TABLE tb ALTER COLUMN aa Char⽂本
ALTER TABLE tb ALTER COLUMN aa Text(n)⽂本,其中n表⽰字段⼤⼩ALTER TABLE tb ALTER COLUMN aa Binary⼆进制
ALTER TABLE tb ALTER COLUMN aa Counter⾃动编号
ALTER TABLE tb ALTER COLUMN aa Memo备注
ALTER TABLE tb ALTER COLUMN aa Time⽇期/时间
本⽂原创发布php中⽂⽹,转载请注明出处,感谢您的尊重!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。