SQL语句:
if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[表名]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
create ...
else
update ...
GO
if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[表名]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
create ...
else
update ...
GO
以下示例返回数据库中的表的列表。[Visual Basic]
Public Function GetTables(conn As OleDbConnection) As DataTable
conn.Open()
Dim schemaTable As DataTable = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, _
New Object() {Nothing, Nothing, Nothing, "TABLE"})
conn.Close()
Return schemaTable
End Function
[C#]
public DataTable GetTables(OleDbConnection conn)
{
conn.Open();
DataTable schemaTable = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,
new object[] {null, null, null, "TABLE"});
conn.Close();
return schemaTable;
}
create ...
else
update ...
GO能解释一下这条语句吗?dbo.sysobjects和N'[dbo].[表名]是怎么回事?
dbo.sysobjects-〉你指定数据库中的对象集合
这一句,如果你指定的表不存在当前数据库,创建,否则