ACCESS以SQL SERVER里查询access数据[转]

SELECT
*
FROM OpenDataSource( ‘Microsoft.Jet.OLEDB.4.0’,
‘Data Source=”c:\DB.mdb”;User ID=Admin;Password=’)…表名

select * from opendatasource(‘Microsoft.Jet.OLEDB.4.0’,’Data
Source=”D:\db.mdb”;User

ID=Admin;Password=’)…Student where name = ‘我’

select * from newTable


2.将access导入SQL server
— ======================================================
在SQL SERVER 里运行:
SELECT *
INTO newtable
FROM OPENDATASOURCE (‘Microsoft.Jet.OLEDB.4.0’,
      ‘Data

Source=”c:\DB.mdb”;User ID=Admin;Password=’ )…表名


3.以SQL SERVER表里的多少插入到Access表中
— ======================================================
在SQL SERVER 里运行:
insert into OpenDataSource( ‘Microsoft.Jet.OLEDB.4.0’,
‘Data Source=” c:\DB.mdb”;User ID=Admin;Password=’)…表名
(列名1,列名2)
select 列名1,列名2 from sql表

实例:
insert into OPENROWSET(‘Microsoft.Jet.OLEDB.4.0’,
   ‘C:\db.mdb’;’admin’;”,
Test)
select id,name from Test
INSERT INTO OPENROWSET(‘Microsoft.Jet.OLEDB.4.0’, ‘c:\trade.mdb’;
‘admin’; ”, 表名)
SELECT *
FROM sqltablename

insert into OpenDataSource(‘Microsoft.Jet.OLEDB.4.0’,’Data
Source=”D:\db.mdb”;User

ID=Admin;Password=’)…Student(studentid,name) select staffid,name from
staff
insert into OPENROWSET(‘Microsoft.Jet.OLEDB.4.0’,
   ‘D:\db.mdb’;’admin’;”,
Student)
select accountid,name from tblbaccount

select * from

openrowset(‘Microsoft.Jet.OLEDB.4.0′,’D:\db.mdb’;’admin’;”,Student)

SQL Server 阻止了对组件 ‘Ad Hoc Distributed Queries’ 的
STATEMENT’OpenRowset/OpenDatasource’ 的

访,因为这组件都当这服务器安全配置的一样有要吃关。系统管理员可以经过动
sp_configure 启用

‘Ad Hoc Distributed Queries’。有关启用 ‘Ad Hoc Distributed Queries’
的详细信息,请参考 SQL

Server 联机丛书中之 “外围应用配置器”。

查询相关资料,找到解决智: 启用Ad Hoc Distributed Queries: exec
sp_configure ‘show advanced

options’,1 reconfigure exec sp_configure ‘Ad Hoc Distributed Queries’,1
reconfigure 运形成后,

关闭Ad Hoc Distributed Queries: exec sp_configure ‘Ad Hoc Distributed
Queries’,0 reconfigure

exec sp_configure ‘show advanced options’,0 reconfigure

exec sp_configure ‘show advanced options’,1 reconfigure
exec sp_configure ‘Ad Hoc Distributed Queries’,1 reconfigure

SELECT *
INTO car
FROM OPENDATASOURCE (‘Microsoft.Jet.OLEDB.4.0’,
      ‘Data
Source=”D:\GCLsoft\jz\Debug\jzdata.mdb”;User ID=Admin;Password=’
)…car
SELECT *
INTO moto
FROM OPENDATASOURCE (‘Microsoft.Jet.OLEDB.4.0’,
      ‘Data
Source=”D:\GCLsoft\jz\Debug\jzdata.mdb”;User ID=Admin;Password=’
)…moto


oracle 设置主键、修改列等sql语句(转载)2010-01-11 11:59
规则表—〉分区表
目录组织表

修改列名
alter table 表明 rename column rename 老列名 to 新列名
添加 字段
alter table 表名 add(字段名 类型);
去除字段
alter table 表名 drop column 字段名
改列属性
alter table 表名 modify (字段名 新属性)
装有一个字段为无用状态
alter table 表名 set unuesed column 字段名
抹无用字段
alert table 表名 drop unused cloumns
丰富主键
alert table 表名 add constraint pkKey primary key(字段列表)
表分区
oracle
允许用户对标进一步的筹划,即对标进一步的拆分,将表明分成多只逻辑部分,
每个有改为其为标的分区
说明分区的长
增进可用性。单个分区出现故障未见面影响至任何分区
均衡IO。不同之分区可以影射到不同的磁盘中
改善性
范围划分区法
这种分区法是冲表中的列值的界定对标进行分区
分区时, 首先依据列中得值的或许的限量进行分
例:
create table student

studentId integer not null,
studentName varchar2(20),
scroe integer

partition by rang(Score)
(
partition p1 values lessthan(60),
partition p2 values lessthan(70),
partition p3 values lessthan(80),
partition p4 values lessthan(maxvalue),
) ;
散列分区
散列分区法提供了平栽通过制定分区编号来都匀地分布数据的法子
外由此hash 函数间数据映射到相应的分区上
她使数据均匀的分红到各个分区上,各分区大小趋向平等
例:
create table department

depno integer not null,
depname varchar2(20),

partition by hash(depno)
(
partition p1 ,
partition p2,
) ;
复合分区
复合分区是优先对数码进行限分区,然后在每个字分区理由进行散列分区的等同栽分区法
例:
create table salgrade
(grade number ,losal number hisal number , hisal number )
partition by rang(grade)
subpartition by hash (losal, hisal)(
partition p1 value lessthan (10),
(subpartition sp1,subpartition sp2),
partition p1 value lessthan (20),
(subpartition sp3,subpartition sp4),
)
列表分区
列表分区允许用户明显的控制实施至分区的映照
不同的克分区或列分区,他运许按自之法子对无序和不相干的多寡集进行分组的团体
例如:
partition by list(字段)
(
partition 列名称 values (值列表),
partition 列名称 values (值列表),
。。。
。。。
partition 列名称 values (值列表)
)
点名的分区中查询
select * from tableName partition(p1)
发明分区的护
移动,添加,删除,结合, 截断,拆分,合并,交换
 

SQL SERVER 与ACCESS、EXCEL的数目易

深谙SQL SERVER
2000底数据库管理员都清楚,其DTS可以开展数量的导入导出,其实,我们呢堪下

Transact-SQL语句进行导入导出操作。在Transact-SQL语句被,我们第一利用OpenDataSource函数、

OPENROWSET
函数,关于函数的事无巨细说明,请参见SQL联机帮助。利用下述方法,可以好易地贯彻SQL

SERVER、ACCESS、EXCEL数据易,详细说明如下:

一样、SQL SERVER 和ACCESS的数量导入导出

常规的数导入导出:

运DTS向导迁移你的Access数据到SQL Server,你可以使用这些手续:

1于SQL SERVER企业管理器中的Tools(工具)菜单上,选择Data
Transformation
2Services(数据易服务),然后择 czdImport Data(导入数据)。
3在Choose a Data Source(选择数据源)对话框中精选Microsoft Access as the
Source,然后键入你

的.mdb数据库(.mdb文件扩展名)的文本称或经浏览寻找该公文。
4于Choose a Destination(选择对象)对话框中,选择Microsoft OLE DB Prov
ider for SQL Server,选

择数据库服务器,然后单击必要之证明办法。
5于Specify Table Copy(指定表格复制)或Query(查询)对话框中,单击Copy
tables(复制表格)。
6每当Select Source Tables(选择来表格)对话框中,单击Select
All(全部选定)。下一样步,完成。

Transact-SQL语句进行导入导出:

1.在SQL SERVER里查询access数据:
— ======================================================
SELECT *
FROM OpenDataSource( ‘Microsoft.Jet.OLEDB.4.0’,

‘Data Source=”c:\DB.mdb”;User ID=Admin;Password=’)…表名


2.将access导入SQL server
— ======================================================
在SQL SERVER 里运行:
SELECT *
INTO newtable
FROM OPENDATASOURCE (‘Microsoft.Jet.OLEDB.4.0’,

‘Data Source=”c:\DB.mdb”;User ID=Admin;Password=’ )…表名


3.以SQL SERVER表里的多少插入到Access表中
— ======================================================
在SQL SERVER 里运行:
insert into OpenDataSource( ‘Microsoft.Jet.OLEDB.4.0’,
‘Data Source=” c:\DB.mdb”;User ID=Admin;Password=’)…表名
(列名1,列名2)
select 列名1,列名2 from sql表
实例:
insert into OPENROWSET(‘Microsoft.Jet.OLEDB.4.0’,
‘C:\db.mdb’;’admin’;”, Test)
select id,name from Test
INSERT INTO OPENROWSET(‘Microsoft.Jet.OLEDB.4.0’, ‘c:\trade.mdb’;
‘admin’; ”, 表名)
SELECT *

FROM sqltablename

仲、SQL SERVER 和EXCEL的多寡导入导出
1、在SQL SERVER里查询Excel数据:
— ======================================================
SELECT *
FROM OpenDataSource( ‘Microsoft.Jet.OLEDB.4.0’,
‘Data Source=”c:\book1.xls”;User ID=Admin;Password=;Extended
properties=Excel 5.0’)…[Sheet1$]
下面是单查询的示范,它经过用于 Jet 的 OLE DB 提供程序查询 Excel
电子表格。
SELECT *
FROM OpenDataSource ( ‘Microsoft.Jet.OLEDB.4.0’,
‘Data Source=”c:\Finance\account.xls”;User ID=Admin;Password=;Extended
properties=Excel

5.0′)…xactions

2、将Excel的数码导入SQL server :
— ======================================================
SELECT * into newtable
FROM OpenDataSource( ‘Microsoft.Jet.OLEDB.4.0’,
‘Data Source=”c:\book1.xls”;User ID=Admin;Password=;Extended
properties=Excel 5.0’)…[Sheet1$]
实例:
SELECT * into newtable
FROM OpenDataSource( ‘Microsoft.Jet.OLEDB.4.0’,
‘Data Source=”c:\Finance\account.xls”;User ID=Admin;Password=;Extended
properties=Excel

5.0′)…xactions

3、将SQL SERVER中询问及之多少导成一个Excel文件
— ======================================================
T-SQL代码:
EXEC master..xp_cmdshell ‘bcp 库名.dbo.表名out c:\Temp.xls -c -q
-S”servername” -U”sa” -P””‘
参数:S 是SQL服务器名;U是用户;P是密码
证明:还可以导出文本文件等强格式
实例:EXEC master..xp_cmdshell ‘bcp saletesttmp.dbo.CusAccount out
c:\temp1.xls -c -q –

S”pmserver” -U”sa” -P”sa”‘
EXEC master..xp_cmdshell ‘bcp “SELECT au_fname, au_lname FROM
pubs..authors ORDER BY au_lname”

queryout C:\ authors.xls -c -Sservername -Usa -Ppassword’
当VB6受到利用ADO导出EXCEL文件代码:
Dim cn As New ADODB.Connection
cn.open “Driver={SQL
Server};Server=WEBSVR;DataBase=WebMis;UID=sa;WD=123;”
cn.execute “master..xp_cmdshell ‘bcp “SELECT col1, col2 FROM
库名.dbo.表名” queryout E:\DT.xls

-c -Sservername -Usa -Ppassword'”

4、在SQL SERVER里往Excel插入数据:
— ======================================================
insert into OpenDataSource( ‘Microsoft.Jet.OLEDB.4.0’,
‘Data Source=”c:\Temp.xls”;User ID=Admin;Password=;Extended
properties=Excel 5.0’)…table1

(A1,A2,A3) values (1,2,3)

T-SQL代码:
INSERT INTO
OPENDATASOURCE(‘Microsoft.JET.OLEDB.4.0’,
‘Extended Properties=Excel 8.0;Data
source=C:\training\inventur.xls’)…[Filiale1$]

(bestand, produkt) VALUES (20, ‘Test’)

相关文章