/*
2008 压缩
行压缩
SQL SERVER 2008 引进了行压缩这个新特性,只有企业版具有该新特性.行压缩只需要最低的空间对行数据进行压缩.行压缩可以在CREATE一个表,索引或者ALTER一个表,索引的时候进行创建.压缩可以在行级别,也可以在页级别.同样备份的时候也可以进行压缩.以下先举例说明如何创建一个表行压缩和ALTER表的时候添加行压缩.
建立测试数据
*/
CREATE DATABASE COMPRESSION_TEST
GO
USE COMPRESSION_TEST
GO
/* 建立一个具有行压缩的表*/
CREATE TABLE Compression_tb1
(id int not null identity(1,1),
departid int not null,
JOBdesc CHAR(2000) not null --为了效果明显一点,可以设置长点
)
with( DATA_COMPRESSION=ROW)&nb ......
/*
标题:一个项目涉及到的50个Sql语句(整理版)
作者:爱新觉罗.毓华(十八年风雨,守得冰山雪莲花开)
时间:2010-05-10
地点:重庆航天职业学院
说明:以下五十个语句都按照测试数据进行过测试,最好每次只单独运行一个语句。
问题及描述:
--1.学生表
Student(S#,Sname,Sage,Ssex) --S# 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别
--2.课程表
Course(C#,Cname,T#) --C# --课程编号,Cname 课程名称,T# 教师编号
--3.教师表
Teacher(T#,Tname) --T# 教师编号,Tname 教师姓名
--4.成绩表
SC(S#,C#,score) --S# 学生编号,C# 课程编号,score 分数
*/
--创建测试数据
create table Student(S# varchar(10),Sname nvarchar(10),Sage datetime,Ssex nvarchar(10))
insert into Student values('01' , N'赵雷' , '1990-01-01' , N'男')
insert into Student values('02' , N'钱电' , '1990-12-21' , N'男')
insert into Student values('03' , N'孙风' , '1990-05-20' , N'男')
insert into Student values('04' , N'李云' , '1990-08-06' , N'男')
insert into Student values('05' , N'周梅' , '1991-12-01' , N'女')
insert into Student val ......
最近一直在用SQL SERVER, 发现平时积攒的一些问题如果不及时的记录下来,很快就忘了. 过段时间再发现相同问题时,还要做重复工作.
多做些笔记吧, 提高一下工作效率.
1, 读取DBF文件,存入到SQL SERVER时,出现问题两个。
第一个错误信息:“发生错误:ERROR [IM001][Microsoft][ODBC驱动程序管理器]驱动程序不支持此功能”。
记得上次碰到相同问题, 当时在网上找了很长时间才解决的,可是没有记录解决的过程。这次继续在网上找,愣是没找到。大意应该是system32 下的一个DLL文件版本太新,需要替换成原来的版本。
终于从QQ的聊天记录找到了蛛丝马迹,就是将 vfpodbc.dll 文件的旧版本替换掉现有的新版本。估计是升级版的工作没做好,把这部分功能给删除了。
文件目录为'C:\Windows\System32'.
第二个错误信息比较长,大意是:对组件“Ad Hoc Distributed Queries的STATEMENTOpenRowset/OpenDatasource”的访问被关闭。
这个问题原来也碰到过,在2005下,有个外围应用配置器,里面直接有个复选框勾上就可以了。(启用OpenRowset和OpenDataSource支持)
可在2008下没找到这个复先框。
在网上查查,可以通过SQL SERVER的存贮过程完成这个工作。
EX ......
使用了一段时间后,SQL Server 的 LDF文件体积巨大.
如何处理嘞, 对于 SQL Server 2005 及之前的版本,可以使用如下 SQL:
declare @name varchar(50)
set @name='dbname
'
backup
log @name
with truncate_only
dbcc shrinkdatabase (@name,20)
可是在 SQL Server 2008 开始,执行上面的语句会报错:
'truncate_only' is not a recognized BACKUP option.
所要换一种方式:
首先要右键 DB 属性中设置 Option 的 Recovery model 为 Simple,
再执行如下 SQL (红字部分替换成实际的 Files 的日志文件的 逻辑名称(Logical Name))
DBCC SHRINKFILE (N'agsr_log
' , 1)
GO
执行完后,ldf 文件变成 1M 的内容.
......
/*
SQL SERVER 2008 压缩备份
SQL SERVER 2008 在企业版和开发版中引入了备份压缩.使用者个功能可以更快速的备份数据库并且
消耗更少的磁盘空间.压缩量依赖于数据库中存储的数据.例如,含有重复值字符数据的数据库可以有
比包含有更多数字或者加密数据的数据库有更高的压缩率.
下面进行配置和进行压缩备份
*/
/*
启用压缩备份有2种方法一个显式的通过语句BACKUP DATABASE....WITH COMPRESSION
还有一种是通过配置服务器实例的默认压缩.
配置默认压缩
*/
EXEC sp_configure 'BACKUP COMPRESSION DEFAULT','1'
RECONFIGURE WITH OVERRIDE
GO
SELECT DESCRIPTION,VALUE_IN_USE
from SYS.configurations
WHERE name= 'BACKUP COMPRESSION DEFAULT'
/*
&n ......
本文章原创于www.yafeilinux.com 转载请注明出处。
SQL即结构化查询语言,是关系数据库的标准语言。前面已经提到,在Qt中利用QSqlQuery类实现了执行SQL语句。需要说明,我们这里只是Qt教程,而非专业的数据库教程,所以我们不会对数据库中的一些知识进行深入讲解,下面只是对最常用的几个知识点进行讲解。
我们下面先建立一个工程,然后讲解四个知识点,分别是:
一,操作SQL语句返回的结果集。
二,在SQL语句中使用变量。
三,批处理操作。
四,事务操作。
我们新建Qt4 Gui Application工程,我这里工程名为query ,然后选中QtSql模块,Base class选QWidget。工程建好后,添加C++ Header File ,命名为connection.h ,更改其内容如下:
#ifndef CONNECTION_H
#define CONNECTION_H
#include <QMessageBox>
#include <QSqlDatabase>
#include <QSqlQuery>
static bool createConnection()
{
QSqlDatabase db = QSqlDatabase::addDatabase(“QSQLITE”);
db.setDatabaseName(“:memory:”);
if (!db.open()) {
  ......