C#使用Sqlite示例
首先下载SQLite-1.0.66.0-setup.exe,下面简单说下用法:打开vs2008,打开 视图——服务器资源管理器右键点击 数据连接,选择 添加连接在弹出的窗体中点击 更改这时在数据源一栏可以看到 SQLite database File,选中它即可在接下来的操作不用我说了吧~,可以打开Sqlite的数据库也可以新创建一个有了Sqlite数据库之后就可以在VS上调用了:首先要引用System.Data.Sqlite这个命名空间,装完开发包就已经有了的,不用再去找然后就可以像操作SQL一样操作SQLite了,只是类名得改改哈,之前的Sqlconnection改成S...
提高insert插入速度
SQL中insert是我们常用到的一个句子了,平时都会使用insert插入数据语句,特别是有时候需要一个大批量的数据来做测试,一条一条insert将会是非常慢的,那么我们如何让我们的inser更快呢。 先看个例子: 我们需要在如下这个表中插入测试数据,包含两列,一个是itemid,一个是itemname。如果向这个表中插入103,680,000 条记录,普通的插入方法可能需要20多天才能完成,但是用这里介绍的新方法在5个小时内就能够完成。 先看一般的数据插入方法,假设我们向上表中插入100000 条数据:复制代码代码如下:CREATE TABLE #tempTab...
FASTREPORT .NET导出WORD、EXCEL
FASTREPORT .NET导出WORD,EXCEL一直没找到方法,最后使用 report1.Show();//就是预览然后就可以打印和保存了。任何格式都可以!
Failed loading data! sql execution failed!的解决办法
前段时间给朋友安装了一个建站之星,最近他突然说有好多页面无法方法,我进去看,报错:Failed loading data! sql execution failed! 在官方论坛上问了很久也没法办,有人说重新安装,可是数据怎么办呢?后来,百度很久都没找到相应办法。 过了两天,我实在找不到办法,想把数据库备份后重新安装一次包括数据库。结果发现备份时报了个错:ss_static_contents' is marked as crashed and should be repaired when using LOCK TABLE 这下问题一下子就明白了,原来是ss_static_contents这个表...
SQL复制数据库数据到另一个数据库
-- -- -- -- -- -- -- -- -- -- -- ----功能:复制DB_A中所有表的数据到另一个数据库DB_B--作者:数据库之家--时间:2012-02-02-- -- -- -- -- -- -- -- -- -- --DECLARE CUR_C CURSOR FOR SELECT name FROM dbo.sysobjects WHERE type='u' ORDER BY name DESC OPEN CUR_C DECLARE @NAME VARCHAR(50) DECLARE @SQL VARCHAR(1000)FETCH NEXT FROM cur_c INTO @NAME WHILE(@@FETCH_STATUS=0)BEGIN SET @SQL='INSERT INTO DB_A.DBO.'+@NAME+' SELECT * FROM DB_ B.DBO.'+ @NAME...
SQL Server中 索引的使用
使用索引来更快地遍历表。缺省情况下建立的索引是非群集索引,但有时它并不是最佳的。在非群集索引下,数据在物理上随机存放在数据页上。合理的索引设计要建立在对各种查询的分析和预测上。一般来说:①.有大量重复值、且经常有范围查询(between, >,< ,>=,< =)和order by、group by发生的列,可考虑建立群集索引②.经常同时存取多列,且每列都含有重复值可考虑建立组合索引;③.组合索引要尽量使关键查询形成索引覆盖,其前导列一定是使用最频繁的列。
IN和EXISTS
IN和EXISTSEXISTS要远比IN的效率高。里面关系到full table scan和range scan。几乎将所有的IN操作符子查询改写为使用EXISTS的子查询。
IS NULL与IS NOT NULL
IS NULL 与 IS NOT NULL不能用null作索引,任何包含null值的列都将不会被包含在索引中。即使索引有多列这样的情况下,只要这些列中有一列含有null,该列就会从索引中排除。也就是说如果某列存在空值,即使对该列建索引也不会提高性能。任何在where子句中使用is null或is not null的语句优化器是不允许使用索引的。