我知道这与this question类似,但我在C#中使用SQL Server CE 3.5与WinForms项目。我怎样才能确定一个表是否存在?我知道IF
关键字不受支持,但EXISTS
是。 information_schema是否存在于CE中,我可以查询它?谢谢。确定SQL Server CE中是否存在表?
16
A
回答
34
是的,它确实存在:
SELECT *
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME = 'TableName'
+0
不会“SELECT COUNT(ID)”变得更容易,性能更高一些(如果表格很宽(很多列)或高(很多行)? – 2013-07-31 18:27:51
1
正如你可以查询表,赶上抛出的异常的替代品。 如果有例外,表未找到,否则表存在。
SELECT TOP 1 1 FROM TableName;
有点简单的性能测试比查询对INFORMATION_SCHEMA有更好的结果。尽管我会将对INFORMATION_SCHEMA的查询视为更清晰。
0
使用数据库助手:
var db = Database.Open("MyDatabase");
var sql = @"SELECT Count(*) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 'MyTable'"
var count = db.QueryValue(sql);
if(count.Equals(1)){
//table exists
}
相关问题
- 1. 我如何检查表是否存在SQL Server CE 3.5
- 2. 确定SQL Server表是否为只读
- 3. C#中不存在指定的表(SQL Server CE)
- 4. 如何确定SQL Server中是否存在数据库角色?
- 5. 确定SQL Server中是否存在临时表的最佳方法是什么?
- 6. NHibernate是否SQL-Server CE上没有从DbType存在映射AnsiStringFixedLength
- 7. 我是否需要安装Sql Server CE?
- 8. 是否存在Microsoft SQL Server绑定?
- 9. 如何检查Windows CE上是否安装了SQL Server CE
- 10. SQL Server CE存在子句性能
- 11. 删除表,如果存在于SQL Server CE中
- 12. SQL Server CE BadImageFormat
- 13. SQL Server CE ORM
- 14. Soundex SQL Server CE
- 15. SQL Server中是否存在LastIndexOf?
- 16. 如何检查SQL Server中是否存在表的列表?
- 17. 逻辑,以检查是否确切的ID是否存在SQL Server中的组
- 18. Oracle - 确定表是否存在
- 19. 使用SQL查询,以确定是否一个表存在
- 20. 查询SQL Server CE
- 21. SQL Server CE下载
- 22. 的SQL Server CE - ROW_NUMBER
- 23. 的SQL Server CE 4.0
- 24. 使用SQL Server CE的内存/性能
- 25. SQL Server CE 3.5 SP1存储过程
- 26. 如何确定列是否在其表的主键中? (SQL Server)的
- 27. 检查SQL Server表中是否存在使用functoids的记录
- 28. 检查一个值是否存在于多个表中SQL Server
- 29. 检查:表中是否存在SQL Server数据库?
- 30. Azure/Powershell:检查SQL Server是否存在
我想我有一个漂亮的实现需要正是代码这一点,但它不是为我工作。我发布了一个问题 diesbezueglich at:http://social.msdn.microsoft.com/Forums/en-US/8ee6aefa-e47b-4f0c-8735-120b8bf041ec/why-is-my-sqlserver-ce-code-failing (我试图将它张贴在codeproject上,但它多次冻结我) – 2013-07-31 19:40:36
第三次是一种魅力:http://www.codeproject.com/Questions/629607/Why-is-my-SQLServer-CE-code-失败 是的,我交叉发布,但到两个不同的论坛,所以希望这不被视为gauche。 – 2013-07-31 19:43:32