sql語句輸入到哪里-如何用sql語句把excel中的數據導入指定數據庫?
在查詢分析器里,直接寫 SQL語句: 如果是導入數據到現有表,則采用 INSERT INTO 表 SELECT * FROM OPENROWSET('MICROSOFT。
JET。OLEDB。
4。0' ,'Excel 5。
0;HDR=YES;DATABASE=c:\test。 xls',sheet1$) 的形式 如果是導入數據并新增表,則采用 SELECT * INTO 表 FROM OPENROWSET('MICROSOFT。
JET。OLEDB。
4。0' ,'Excel 5。
0;HDR=YES;DATABASE=c:\test。 xls',sheet1$) 的形式。
以上語句是將 EXCEL文件里 SHEET1工作表中所有的列都讀進來,如果只想導部分列,可以 INSERT INTO 表 (a1,a2,a3) SELECT a1,a2,a3 FROM OPENROWSET('MICROSOFT。 JET。
OLEDB。4。
0' ,'Excel 5。0;HDR=YES;DATABASE=c:\test。
xls',sheet1$) 其實可以將 OPENROWSET('MICROSOFT。JET。
OLEDB。4。
0' ,'Excel 5。 0;HDR=YES;DATABASE=c:\test。
xls',sheet1$)當成一個表,例如我就寫過這樣一個句子: INSERT INTO eval_channel_employee(channel,employee_id) SELECT CASE a。 渠道 WHEN 'DIY' THEN 1 WHEN 'RDC' THEN 0 WHEN 'KCM' THEN 2 ELSE 3 END ,b。
id FROM OPENROWSET('MICROSOFT。JET。
OLEDB。4。
0' ,'Excel 5。 0;HDR=YES;DATABASE=c:\temp\name。
xls',sheet1$) AS a,pers_employee b WHERE a。員工編碼 =b。
code 簡單的方法: SQL2005中直接可以實現導入功能 SQL2008不知道可不可以。 操作過程如下: 第一步:登錄到 SQL Server Management Studio, 第二步:在 “對象資源管理器 ”中右鍵單擊 “管理 ”,在彈出列表中單擊 “導入數據 ” 第三步:在 “導入向導 ”對話框中單擊 “下一步 ”,進入到 “選擇數據源 ”對話框,在 “數據源 ”列表中選擇 “Microsoft Excel ”,同時選擇相應的 Excel 文檔,完成后單擊 “下一步 ”(一定要勾選該對話框中的 “首行包含列名稱 ”,因此它是將 Excel文檔中的列標題為數據庫表中的列項標題) 第四步:指定目標數據庫服務,依次單擊 “下一步 ”。
。
。至到 “完成 ” 第五步:重新打到 SQL Server Management Studio,進入到導入的數據庫表,可以發現所導入的 Excel文檔數據。
你試下下面的吧: 打開SQL Server Configuration Manager,啟用SQL Server Agent(實例名)。 啟動模式更改為“自動” 以上是對這個問題的回答,希望對您有幫助。
在sql語句中怎么輸出年
求總藏書量、藏書總金額,總庫存冊數、最高價、最低價。
select count(圖書編號) as 總藏書量,
sum(定價) as 藏書總金額,
sum(實際數量) as 總庫存冊數,
max(定價) as 最高價,
min(定價) as 最低價
from 圖書卡片
go
2. 列出藏書在10本以上的書(書名、作者、出版社、年份)。
select 圖書名稱,作者姓名,出版社,出版日期
from 圖書卡片
group by 圖書編號 having(coung(1)>10)
order by 圖書名稱
go
3. 哪些出版社的藏書種類數超過100種。
select 出版社 as '藏書種類數超過100種的出版社'
from 圖書卡片
group by 出版社 having(count(類別)>100)
order by 出版社
go
4. 目前實際已借出多少冊書?
select sum(借出數量) as '借出數量'
from 圖書卡片
go
5. 年份最久遠的書。
select top 1 with ties 圖書名稱 from 圖書卡片
order by 出版日期
go
6. “數據庫系統原理教程,王珊編,清華大學出版社,1998年出版”還有幾本?
select count(1) from 圖書卡片
where concaints(摘要,'"數據庫系統原理教程,王珊編,清華大學出版社,1998年出版"')
go
7. 哪一年的圖書最多?
select top 1 with ties convert(substring(出版日期,1,4)) as 年份,count(1) as '圖書數量'
from 圖書卡片
group by 出版日期
order by 圖書數量 desc
go
8. 哪本借書證未歸還的圖書最多?
select top 1 with ties A.讀者編號,count(1) as '借書數量'
from 圖書卡片 A,借閱 B
where A.圖書編號=B.圖書編號
group by A.讀者編號
order by 借書數量 desc
go
9、平均每本借書證的借書冊數。
select avg(借閱數量) as '平均每本借書證的借書冊數'
from 借閱
go
10.哪個系的同學平均借書冊數最多?
select top 1 with ties A.工作單位,avg(借閱數量) as '平均借閱數量'
from 讀者 A,借閱 B
where A.讀者編號=B.讀者編號
group by A.工作單位
order by 平均借閱數量' desc
go
11. 最近兩年都未被借過的書。
select 圖書名稱
from 圖書卡片
where 圖書編號 in(select 圖書編號 from 借閱 where datediff(year,借閱日期,getdate())>2)
go
12. 列出那些借了圖書逾期未歸還的借書證號和圖書名。
select A.讀者編號 as '借書證號',B.圖書名稱
from 讀者 as A inner join 圖書卡片 as B on A.圖書編號=B.圖書編號
where A.應歸還日期getdate() and A.實際歸還日期 is null
go
13.今年未借過書的借書證。
select 讀者編號
from 讀者
where 讀者編號 not in(select 讀者編號
如何使用SQL語句將Oracle數據庫表導出為TXT文
可用spool的方式將oracle的數據導出成文本。
1、登錄sqlplus到指定數據庫。2、在某一路徑,如c盤data目錄下,創建腳本,文件名為:導出腳本。
sql 內容如下:set colsep '|' --設置|為列分隔符 set trimspool on set linesize 120 set pagesize 2000 set newpage 1 set heading off set term off set num 18 set feedback off spool c:\data\導出。 txtselect * from emp; spool off3、執行命令:@C:\data\導出腳本。
sql4、執行結束后,c盤data目錄下會生成導出。txt的文件,里邊內容就是導出表中的內容。
sql語句將數據庫表中的數據導出到excel,怎么操作
首先要確定SQL語句的運行環境。以下是VB里的數據導出代碼,已假設創建了一個adodc控件:
Dim i, j As Integer
Dim ex As Object
Dim exwbook As Object
Dim exsheet As Object
Set ex = CreateObject("*ation") '創建EXCEL對象
Set exwbook = * '打開文件
*e = True
Set exsheet = *eets("sheet1") '設定工作表
With *set
For j = 2 To .*
*(1, 1) = "序號"
*(1, j) = .Fields(j - 1).Name
Next
.MoveFirst
For i = 1 To .RecordCount
For j = 2 To .*
*(i + 1, 1) = i
*(i + 1, j) = .Fields(j - 1).Value
Next
.MoveNext
Next i
End With
SQL語句 導入導出
select * into 數據庫*.導入表 from 數據庫*.導出表
insert into 數據庫*.導入表(fld1, fld2) select fld1,fld2 from 數據庫*.導出表
以上兩句都是將 導出表 的數據導入到(導入表)中,但兩句又有區別的。
第一句(select into from)要求目標表(導入表)不存在,因為在導入時會自動創建。
第二句(insert into select from)要求目標表(導入表)存在,由于目標表已經存在。
SQL數據庫的導入與導出
一、導出導入SQL Server里某個數據庫 1.在SQL Server企業管理器里選中要轉移的數據庫,按鼠標右鍵,選所有任務->備份數據庫。
2.備份 選數據庫-完全, 目的 備份到 按添加按鈕 文件名 在SQL Server服務器硬盤下輸入一個自定義的備份數據庫文件名(后綴一般是bak) 重寫 選重寫現有媒體 最后按確定按鈕。 如果生成的備份數據庫文件大于1M,要用壓縮工具壓縮后再到Internet上傳輸。
3.通過FTP或者remote desktop或者pcanywhere等方法 把第二步生成的備份數據庫文件或者其壓縮后的文件傳到目的SQL Server數據庫,如果有壓縮要解壓。 4.目的SQL Server數據庫如果還沒有此數據庫,先創建一個新的數據庫; 然后選中這個新創建的數據庫,按鼠標右鍵,選所有任務->還原數據庫 還原->從設備->選擇設備->磁盤->添加(找到要導入的備份數據庫文件名)->確定 還原備份集->數據庫-完全 最后按確定按鈕。
完全的數據庫導入成功了。 (如果在已經存在的SQL Server數據庫上還原數據庫可能遇到有還有其它人正在使用它而恢復操做失敗, 可以去看 ->管理->當前活動->鎖/對象->找到數據庫下鎖的進程號->到查詢分析器里用kill 進程號殺掉這些鎖, 然后再做還原) 注意:如果在原有的目的SQL Server數據庫上從備份文件(*.bak)還原數據庫 會把已經存在的表、存儲過程等數據庫對象全部替換成最近這次導入的備份數據庫里的內容。
如果一定要還原備份文件(*.bak)里部分數據,需要另外建一個新數據庫, 其邏輯名稱和數量同備份文件(*.bak)里數據庫的邏輯名稱和數量一致; 新數據庫的物理文件名稱取得一定要和備份文件(*.bak)里數據庫的物理文件不一樣才行。 二、導出導入SQL Server里某個表 1.沒有防火墻,同一個局域網里或不在同一個局域網里,但通過Internet可以互相訪問 在SQL Server企業管理器里選中目的數據庫 ,按鼠標右鍵,選所有任務->導入數據-> 彈出數據轉換服務導入/導出向導窗口->下一步-> 選數據源-> 數據源(用于SQL Server的Microfost OLE DB提供程序)-> 服務器(可選擇局域網內能訪問到的所有SQL Server服務器,或者直接輸入IP地址)-> 選擇使用windows身份驗證還是使用SQL Serve身份驗證(輸入數據庫的用戶名和密碼)-> 數據庫(可選擇上面選中SQL Server服務器上所有權限范圍內的數據庫)->下一步-> 選擇目的->目的(用于SQL Server的Microfost OLE DB提供程序)-> 服務器(默認為上一步里選中的導出服務器,也可以選其它局域網內能訪問到的所有SQL Server服務器,或者直接輸入IP地址)-> 目的數據庫(可選擇上面選中SQL Server服務器上所有權限范圍內的數據庫)->下一步-> 制定表復制或查詢->選從源數據庫復制表和視圖(也可以選擇用一條查詢指定要傳輸的數據)->下一步-> 選擇源表和視圖->在要導入的表和視圖前面選中源->目的出現同樣的表名(可以手工修改成別的表名)-> 轉換->列映射和轉換里面可以修改源表和目的表之間字段的對應關系,修改目的表字段的類型和長度等, 并可以選擇創建目的表,在目的表中增加行,除去并重新創建目的表,啟用標志插入等選項->確定->下一步-> 保存、調度和復制包->時間->立即運行(如果要實現隔一段時間自動導出導入數據,選調度DTS包以便以后執行)-> 保存(可以不選)->[ 保存DTS包(如果以后還要轉移這批相同的數據,可以把本次導出導入的內容和步驟保存起來, 存到SQL Server即可,保存的時候要輸入DTS的包名及詳細描述)->下一步-> ]->完成 正在執行包->圖形界面顯示創建表及插入記錄的步驟和狀態->完成 2.經過防火墻,不在同一個局域網里 ①、導出表里的數據到文本文件: 在SQL Server企業管理器里選中目的數據庫,按鼠標右鍵,選所有任務-> 導入數據->彈出數據轉換服務導入/導出向導窗口->下一步-> 選數據源-> 數據源(用于SQL Server的Microfost OLE DB提供程序)-> 服務器(可選擇局域網內能訪問到的所有SQL Server服務器)-> 選擇使用windows身份驗證還是使用SQL Serve身份驗證(輸入數據庫的用戶名和密碼)-> 數據庫(可選擇上面選中SQL Server服務器上所有權限范圍內的數據庫)->下一步-> 選擇目的->目的(文本文件)-> 文件名(在自己的電腦硬盤中生成一個自定義的文本文件) ->下一步-> 制定表復制或查詢->選從源數據庫復制表和視圖(也可以選擇用一條查詢指定要傳輸的數據)->下一步-> 選擇目的文件格式->源(選擇要導出的表)->用默認的帶分隔符->選第一行包含有列名稱選項->下一步-> 保存、調度和復制包->時間->立即運行(如果要實現隔一段時間自動導出到文本文件,選調度DTS包以便以后執行)-> 保存(可以不選)-> [保存DTS包(保存的時候要輸入DTS的包名及詳細描述)->下一步->]->完成 正在執行包->圖形界面顯示表到文本文件的步驟和狀態->完成 如果生成的文本文件大于1M,要用壓縮工具壓縮后再到Internet上傳輸。
②、通過FTP或者remote desktop或者pcanywhere等方法把 第①步生成的文本文件或者其壓縮后的文件傳到目的SQL Server數據庫,如果有壓縮要解壓。 ③、把文本文件導入目的SQL Server數據庫 。