--查询外键 select b.name FK_Name,c.name ForeignTable,d.name ForeignCol,e.name refTable,f.name refCol from sysforeignkeys a inner join sysobjects b on a.constid=b.id inner join sysobjects c on a.fkeyid=c.id inner join syscolumns d on a.fkeyid=d.id and a.fkey=d.colid inner join sysobjects e on a.rkeyid=e.id inner join syscolumns f on a.rkeyid=f.id and a.rkey=f.colid --查询表名与字段名 select a.name as 表名,b.name as 字段名 from sysobjects a left join syscolumns b on a.id=b.id where a.xtype='U' order by a.name,b.name
DataTable dt=xxx.sql("select * from abc");
foreach (DataColumn dc in dt.Columns)
{
Response.Write(string.Format("列名:{0} ,数据类型:{1}" ,dc.ColumnName, dc.DataType));
}
也就是说,如果有这种需求的话就只能手动写SQL做了对吧?这样也挺麻烦的,我得先找哪些有差别再写出SQL再执行。
也就是说,如果有这种需求的话就只能手动写SQL做了对吧?这样也挺麻烦的,我得先找哪些有差别再写出SQL再执行。找出差别容易得很。数据库迁移不是那么简单的了,有时候手动写sql也不一定可以,要自己规划,可能要导入导出数据,要做好预案。万一失败,怎么处理,遇到冲突怎么解决。这是dba干的活。
也就是说,如果有这种需求的话就只能手动写SQL做了对吧?这样也挺麻烦的,我得先找哪些有差别再写出SQL再执行。找出差别容易得很。数据库迁移不是那么简单的了,有时候手动写sql也不一定可以,要自己规划,可能要导入导出数据,要做好预案。万一失败,怎么处理,遇到冲突怎么解决。这是dba干的活。前辈:如果我们现在没有DBA,但是想实现在程序中升级一个数据库,从旧版本升级到新版本,这个您能提供些建议吗?
select b.name FK_Name,c.name ForeignTable,d.name ForeignCol,e.name refTable,f.name refCol
from sysforeignkeys a
inner join sysobjects b on a.constid=b.id
inner join sysobjects c on a.fkeyid=c.id
inner join syscolumns d on a.fkeyid=d.id and a.fkey=d.colid
inner join sysobjects e on a.rkeyid=e.id
inner join syscolumns f on a.rkeyid=f.id and a.rkey=f.colid
--查询表名与字段名
select a.name as 表名,b.name as 字段名
from sysobjects a
left join syscolumns b on a.id=b.id
where a.xtype='U'
order by a.name,b.name