【sql語句輸入到哪里】如何用sql語句把excel中的數據導入指定數據庫
在查詢分析器里,直接寫 SQL語句: 如果是導入數據到現有表,則采用 INSERT INTO 表 SELECT * FROM OPENROWSET('*.4.0' ,'Excel 5.0;HDR=YES;DATABASE=c:\*',sheet1$) 的形式 如果是導入數據并新增表,則采用 SELECT * INTO 表 FROM OPENROWSET('*.4.0' ,'Excel 5.0;HDR=YES;DATABASE=c:\*',sheet1$) 的形式。
以上語句是將 EXCEL文件里 SHEET1工作表中所有的列都讀進來,如果只想導部分列,可以 INSERT INTO 表 (a1,a2,a3) SELECT a1,a2,a3 FROM OPENROWSET('*.4.0' ,'Excel 5.0;HDR=YES;DATABASE=c:\*',sheet1$) 其實可以將 OPENROWSET('*.4.0' ,'Excel 5.0;HDR=YES;DATABASE=c:\*',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 ,* FROM OPENROWSET('*.4.0' ,'Excel 5.0;HDR=YES;DATABASE=c:\temp\*',sheet1$) AS a,pers_employee b WHERE a.員工編碼 =* 簡單的方法: SQL2005中直接可以實現導入功能 SQL2008不知道可不可以。 操作過程如下: 第一步:登錄到 SQL Server Management Studio, 第二步:在 “對象資源管理器 ”中右鍵單擊 “管理 ”,在彈出列表中單擊 “導入數據 ” 第三步:在 “導入向導 ”對話框中單擊 “下一步 ”,進入到 “選擇數據源 ”對話框,在 “數據源 ”列表中選擇 “Microsoft Excel ”,同時選擇相應的 Excel 文檔,完成后單擊 “下一步 ”(一定要勾選該對話框中的 “首行包含列名稱 ”,因此它是將 Excel文檔中的列標題為數據庫表中的列項標題) 第四步:指定目標數據庫服務,依次單擊 “下一步 ”。
。至到 “完成 ” 第五步:重新打到 SQL Server Management Studio,進入到導入的數據庫表,可以發現所導入的 Excel文檔數據。
你試下下面的吧: 打開SQL Server Configuration Manager,啟用SQL Server Agent(實例名)。 啟動模式更改為“自動” 以上是對這個問題的回答,希望對您有幫助。
如果excel中想使用sql語句怎么使用
例如簡單的從sheet1表中的數據取到表二:
Sub 簡單查詢()
Set cn = CreateObject("*tion")
Set rs = CreateObject("*set")
* "provider=*.4.0;Extended Properties='Excel 8.0';data source=" & *me
Sql = "select * from [sheet1$]"
Sheets(2).[A2].CopyFromRecordset *e(Sql)
MsgBox "取數據成功"
Sheets("sheet2").Select
*
Set rs = Nothing
Set cn = Nothing
End Sub
如何用SQL語句查詢Excel數據
如何用SQL語句查詢Excel數據?
Q:如何用SQL語句查詢Excel數據? A:下列語句可在SQL SERVER中查詢Excel工作表中的數據。
2007和2010版本:
SELECT*FROMOpenDataSource( '*.12.0', 'Data Source="c:\*";User ID=Admin;Password=;Extended properties=Excel 12.0')。[Sheet1$]
復制代碼
SELECT*FROMOPENROWSET('*.12.0','Excel 12.0;Database=C:\*', 'SELECT * FROM [Sheet1$A1:D100]')
復制代碼
SELECT*FROMOPENROWSET('*.12.0','Excel 12.0;Database=C:\*', 'SELECT * FROM [Sheet1$]')
復制代碼
2003版本:
SELECT*FROMOpenDataSource( '*.4.0', 'Data Source="c:\*";User ID=Admin;Password=;Extended properties=Excel 8.0')。[Sheet1$]
復制代碼
SELECT*FROMOPENROWSET('*.4.0','Excel 8.0;Database=C:\*', 'SELECT * FROM [Sheet1$]')
SELECT*FROMOPENROWSET('*.4.0','Excel 8.0;Database=C:\*', 'SELECT * FROM [Sheet1$A1:D100]')
復制代碼
而且,還需要用擁有服務器sysa
如何用SQL語句查詢Excel數據
在通過ADO對Excel對象進行連接時(此時Excel則認為是一個數據源),需要配置對Excel數據源對應的連接串,這個連接串中包括了Provider信息(其實類似對數據庫進行連接操作時,都需要指定連接字符串),以下是一行連接串源代碼: strConnString = "Provider=*.12.0;Data Source=" & strExcelFilePath & ";Extended Properties=Excel 12.0" 這里的Provider使用了*.12.0,其實除了*.12.0,還有*.4.0,它們倆者之間有什么聯系和區別呢: 共同點:都是做為連接Excel對象的接口引擎 不同點: 對于不同的Excel版本,有兩種接口可供選擇:*.4.0(以下簡稱 Jet 引擎)和*.12.0(以下簡稱 ACE 引擎)。
Jet 引擎,可以訪問 Office 97-2003,但不能訪問 Office 2007。 ACE 引擎是隨 Office 2007 一起發布的數據庫連接組件,既可以訪問 Office 2007,也可以訪問 Office 97-2003。
另外:*.12.0 可以訪問正在打開的 Excel 文件,而 *.4.0 是不可以的。 所以,在使用不同版本的office時,要注意使用合適的引擎。
A:下列語句可在SQL SERVER中查詢Excel工作表中的數據。 2007和2003都可用 SELECT * FROM OpenDataSource( '*.12.0','Data Source="D:\*";User ID=Admin;Password=;Extended properties="Excel 12.0 Xml;HDR=YES;IMEX=1";')。
[Sheet1$] 2007和2010版本: SELECT * FROM OpenDataSource( '*.12.0', 'Data Source="c:\*";User ID=Admin;Password=;Extended properties=Excel 12.0')。[Sheet1$] SELECT * FROM OPENROWSET('*.12.0','Excel 12.0;Database=C:\*', 'SELECT * FROM [Sheet1$A1:D100]') SELECT * FROM OPENROWSET('*.12.0','Excel 12.0;Database=C:\*', 'SELECT * FROM [Sheet1$]') 2003版本: SELECT * FROM OpenDataSource( '*.4.0', 'Data Source="c:\*";User ID=Admin;Password=;Extended properties=Excel 8.0')。
[Sheet1$] SELECT * FROM OPENROWSET('*.4.0','Excel 8.0;Database=C:\*', 'SELECT * FROM [Sheet1$]') SELECT * FROM OPENROWSET('*.4.0','Excel 8.0;Database=C:\*', 'SELECT * FROM [Sheet1$A1:D100]') 而且,還需要用擁有服務器sysadmin角色權限的登錄帳號,先執行下列語句打開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。
mysql sql語句導入excel
1.數據透視視圖是處理Excel常用的手段,而應用數據透視視圖的第一步就是導入數據,如本例中,表中有889167行數據,那么將這些數據導入Excel表中將是一個很漫長的過程,可以借助SQL語句選擇性的導入數據,以此來提交數據加載的速度。
2.打開空白Excel,依次點擊【數據】選項卡【自Access按鈕】。
3.在彈出的【選擇數據源】對話框中打開ACCESS文件,本文中則打開文件名為“無線路由”的實例文件;
4.在彈出的【導入數據】對話框中根據需求選擇數據的顯示方式,是“表”、“數據透視表”、“數據透視圖”等等,本文中選擇“數據透視圖”,并單擊對話框下方的【屬性】按鈕;
5.在彈出的【鏈接屬性】對話框中選擇【定義】選項卡,更改命令類型為“SQL”,命令文本為SQL代碼,至此發現Excel已經為篩選出了所有安卓設備。
excel使用sql語句查詢功能.
1. 在宏編輯界面中進行SQL數據查詢以及生成報表的代碼如下:
Sub Static()
Dim objNewWorkbook As Workbook '定義一個Workbook對象
Set objNewWorkbook = *(* &; "\模板.xlt") '使用模板文件新建一個EXCEL報表生成文件
Set objConnection = CreateObject("*tion") '創建一個ADO連接
* "Provider=*.4.0;Extended Properties='Excel 8.0;Hdr=yes;Imex=1';Data Source=" & *me '設置連接字符串
strCommand = "select 施工人, count(*) as 拆電話 from [" & * & "$] where 施工動作 = '拆' and 專業類型 = '電話' group by 施工人" '查詢表單一中的數據源進行統計
?*(1).Range("A3").CopyFromRecordset *e(strCommand)
2.將查詢統計結果輸出到目的報表文件的表單1的從A3開始的區域中
3.下面代碼是調用EXCEL的排序方式進行漢字排序,這里SQL語句中的排序對于漢字排序與期望結果不同
4.使用EXCEL中的排序方法是根據EXCEL版本不同調用有所區別
Select Case *n
Case "11.0":
*(1).Range("A3:M" & CStr(intSumRow - 1)).Sort Key1:=*(1).Range("A3"), Order1:=xlAscending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _
:=xlPinYin, DataOption1:=xlSortNormal
Case "12.0":
*(1).*
*(1).* Key:=Range("A3:A" & CStr(intSumRow - 1)), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With *(1).Sort
.SetRange Range("A2:M" & CStr(intSumRow - 1))
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Case Else
End Select
*
End Sub
如何把Excel數據轉化成SQL語句
首先,我們可以手工創建一條如上圖一樣的Sql語句。
然后,SQL查詢分析器中執行,確定是正確的語句。
再利用Excel單元格中(A1,B1,C1,D1)的數據來
代替上圖中具體的值具體操作是在單元格E2的公式欄
輸入下面的公式。
"
INSERT INTO
logistic_basestation
(
physicalbasestation_id,
logisticbasestation_name,
basestation_type,
project
)
values(
(
'"&A2&"','"&B2&"','"&C2&"','"&D2&"'
)
"
即可以得到一條插入數據的Sql語句。
把鼠標移到寫了公式的單元格的右下角,當單元格有下角變成,
鼠標變成瘦瘦的十字架的時候,單擊鼠標左健往下拉,這樣就生成了所有的五
條Sql語句。
用SQL語句 操作excel
連接字符串
*tionstring=
provider=*.4.0;data source=" & *h(EXCEL表名) & ";
Extended properties=EXCEL 8.0
打開字符串
sqlstring="select * from [sheet1$]",cn
你自己整理
怎么用sql語句讀取excel文件啊
//for get driver。
char szBuf[2001];WORD cbBufMax = 2000;WORD cbBufOut;char *pszBuf = szBuf;CString sDriver;//for read the file。CDatabase database;CString sSql;CString sItem1,sItem2;CString sDsn;CString sFile;//-------------------在這里把sFile賦值為你要讀取的xls文件的文件名.///////////////////////////////////////// Get the names of the installed drivers//////////////////////////////if(!SQLGetInstalledDrivers(szBuf,cbBufMax,& cbBufOut)) sDriver="";else{ // Search for the driver。
do { if( strstr( pszBuf, "Excel" ) != 0 ) { // Found ! sDriver = CString( pszBuf ); break; } pszBuf = strchr( pszBuf, '\0' ) + 1; } while( pszBuf[1] != '\0' );}// Retrieve the name of the Excel driver. This is // necessary because Microsoft tends to use language// specific names like "Microsoft Excel Driver (*.xls)" versus// "Microsoft Excel Treiber (*.xls)"http:// sDriver = GetExcelDriver();if( *y() ){ AfxMessageBox("No Excel ODBC driver found"); exit(0);}*("ODBC;DRIVER={%s};DSN='';DBQ=%s",sDriver,sFile);TRY{ // Open the database using the former created pseudo DSN *(NULL,false,false,sDsn); // Allocate the recordset CRecordset recset( &database ); // Build the SQL string // Remember to name a section of data in the Excel sheet using "Insert->Names" to be // able to work with the data like you would with a table in a "real" database. There // may be more than one table contained in a * = "SELECT [A],[B]" //把A,B為xls文件里面的列,如果要讀取多列的話,用,隔開 "FROM [Sheet1$] " //xls文件里面的第一個表,如果xls文件里的第一個表不是Sheet1這個名字的話,最好改為Sheet1 "ORDER BY [A],[B]"; //從小到大輸出,A列為一級,B列為二級 // Execute that query (implicitly by opening the recordset) *(CRecordset::forwardOnly,sSql,CRecordset::readOnly); // Browse the result while( !*() )//不斷讀取A,B列的數據 { //Read the result line *ldValue("A",sItem1); //把A列的數據傳給sItem1 *ldValue("B",sItem2); //把B列的數據傳給sItem2 //注意!這里的sItem1,sItem2是不斷更新的 // Close the database *();}CATCH(CDBException, e){ // A database exception occured. Pop out the details。 AfxMessageBox("Database error: "+e->m_strError);}END_CATCH;。
轉載請注明出處華閱文章網 » sql語句excel