當前位置:首頁 » 數據倉庫 » 到資料庫的方法
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

到資料庫的方法

發布時間: 2022-07-12 00:39:21

A. 如何將excel表導入資料庫的方法

首先我們肯定有一個excel的文件,文件中有大量的數據,每一列代表著不同的欄位。
我們首先建立一個資料庫,然後在庫中建立表,表的每個欄位對應excel中的每一列。
?
一、假如excel中有四列數據,希望導入到資料庫中
mytable
中,對應的欄位分別為field1,field2,field3,field4.
二、在excel表格中增加一列(?excel應該是e列),利用excel的公式自動生成sql語句(這個很重要,別寫錯了),具體方法
如下?:
1、增加一列(excel應該是e列,因為我們原有4列數據,分別為a\b\c\d列)
2、在第一行(這一行必須為有效數據行否則出錯)的e列,就是e1中輸入公式=concatenate("insert
into
table
(field1,field2,field3,field4)
values
('",a1,"','",b1,"','",c1,"','",d1,"');")
3、此時e1已經生成如下的sql語句:
insert
into
mytable
(field1,field2,field3、field4)
values
('a1中
的數據','b1','c1','d1');
4、將e1的公式復制到所有行的e列,(就是用滑鼠點住e1單元格的右下角,一直拖拽下去,到最後一行數據)
5、此時e列已經生成了所有的sql語句
6、選中e列把e列數據復制到一個純文本文件中,命名為
例如:excel.txt
三、把excel.txt
放到資料庫中運行即可,可通過命令行導入
source
f:\excel.txt

B. 如何把圖片存到資料庫中

通常對用戶上傳的圖片需要保存到資料庫中。解決方法一般有兩種:一種是將圖片保存的路徑存儲到資料庫;另一種是將圖片以二進制數據流的形式直接寫入資料庫欄位中。以下為具體方法:
一、保存圖片的上傳路徑到資料庫:
string uppath="";//用於保存圖片上傳路徑
//獲取上傳圖片的文件名
string fileFullname = this.FileUpload1.FileName;
//獲取圖片上傳的時間,以時間作為圖片的名字可以防止圖片重名
string dataName = DateTime.Now.ToString("yyyyMMddhhmmss");
//獲取圖片的文件名(不含擴展名)
string fileName = fileFullname.Substring(fileFullname.LastIndexOf("\\") + 1);
//獲取圖片擴展名
string type = fileFullname.Substring(fileFullname.LastIndexOf(".") + 1);
//判斷是否為要求的格式
if (type == "bmp" || type == "jpg" || type == "jpeg" || type == "gif" || type == "JPG" || type == "JPEG" || type == "BMP" || type == "GIF")
{
//將圖片上傳到指定路徑的文件夾
this.FileUpload1.SaveAs(Server.MapPath("~/upload") + "\\" + dataName + "." + type);
//將路徑保存到變數,將該變數的值保存到資料庫相應欄位即可
uppath = "~/upload/" + dataName + "." + type;
}
二、將圖片以二進制數據流直接保存到資料庫:
引用如下命名空間:
using System.Drawing;
using System.IO;
using System.Data.SqlClient;
設計資料庫時,表中相應的欄位類型為iamge
保存:
//圖片路徑
string strPath = this.FileUpload1.PostedFile.FileName.ToString ();
//讀取圖片
FileStream fs = new System.IO.FileStream(strPath, FileMode.Open, FileAccess.Read);
BinaryReader br = new BinaryReader(fs);
byte[] photo = br.ReadBytes((int)fs.Length);
br.Close();
fs.Close();
//存入
SqlConnection myConn = new SqlConnection("Data Source=.;Initial Catalog=stumanage;User ID=sa;Password=123");
string strComm = " INSERT INTO stuInfo(stuid,stuimage) VALUES(107,@photoBinary )";//操作資料庫語句根據需要修改
SqlCommand myComm = new SqlCommand(strComm, myConn);
myComm.Parameters.Add("@photoBinary", SqlDbType.Binary, photo.Length);
myComm.Parameters["@photoBinary"].Value = photo;
myConn.Open();
if (myComm.ExecuteNonQuery() > 0)
{
this.Label1.Text = "ok";
}
myConn.Close();
讀取:
...連接資料庫字元串省略
mycon.Open();
SqlCommand command = new
SqlCommand("select stuimage from stuInfo where stuid=107", mycon);//查詢語句根據需要修改
byte[] image = (byte[])command.ExecuteScalar ();
//指定從資料庫讀取出來的圖片的保存路徑及名字
string strPath = "~/Upload/zhangsan.JPG";
string strPhotoPath = Server.MapPath(strPath);
//按上面的路徑與名字保存圖片文件
BinaryWriter bw = new BinaryWriter(File.Open(strPhotoPath,FileMode.OpenOrCreate));
bw.Write(image);
bw.Close();
//顯示圖片
this.Image1.ImageUrl = strPath;
採用倆種方式可以根據實際需求靈活選擇。

C. 如何導入MySQL資料庫

1、打開電腦,在電腦桌面的開始界面中找到mysql,如圖所示。

D. 圖片如何存入資料庫

1、新建一個資料庫,資料庫名為Image,表名為image。並為表添加ID,tupian兩個列。

E. 怎麼將exel表中數據存入到資料庫

將excle表中數據存入到資料庫的方法步驟如下:

1、打開SQL Server Management Studio,按圖中的路徑進入導入數據界面。

F. 如如何將網頁連接到資料庫

一、要實現用戶輸入,肯定前台要是一個網頁,使用jsp,先建一個jsp網頁。

G. 文本文件導入到資料庫中的幾種方法

大型的資料庫開發中常常遇到數據源是平面文件(如文本文件)的情況,對於這樣的數據源,無法使用資料庫對其數據進行有效的管理,另外也無法使用SQL語句對其進行查詢和操作,所以當務之急就是將這些平面文件導
入到資料庫中,然後就可以對其進行高效的操作了。
下面介紹幾種常見的數據導入的方法,希望能夠給大家啟迪。另外,本文所涉及到的資料庫均為ORACLE資料庫,其實對於其他資料庫而言,方法類似。

一、Sql*:Loader
該方法是Oracle資料庫下數據導入的最重要的方法之一,該工具由Oracle客戶端提供,
其基本工作原理是:首先要針對數據源文件製作一個控制文件,控制文件是用來解釋如何對源文件進行解析,其中需要包含源文件的數據格式、目標資料庫的欄位等信息,一個典型的控制文件為如下形式:
LOAD DATA
INFILE '/ora9i/fengjie/agent/data/ipaagentdetail200410.txt'
TRUNCATE (也可以用append替換TRUNCATE)
INTO TABLE fj_ipa_agentdetail
fields terminated ","
trailing nullcols
( AGENT_NO char,
AGENT_NAME char,
AGENT_ADDRESS char,
AGENT_LINKNUM char,
AGENT_LINKMAN char
)
其中,INFILE '/ora9i/fengjie/agent/data/ipaagentdetail200410.txt'指明所要導入的源文件,其實源文件也可以直接通過命令行來輸入獲得 ,fj_ipa_agentdetail為目標表的名字,fields terminated ","是指源文件的各個欄位是以逗號分隔,trailing nullcols表示遇到空欄位依然寫入到資料庫表中,最後這5個欄位是目標資料庫表的欄位結構。通過上面這個典型的控制文件的格式分析可知,控制文件需要與源文件的格式信息一致,否則導入數據會出現異常。
除了控制以外,sql*loader的還需要數據文件,即源文件。根據格式的不同,源文件可以分為固定欄位長度和有分隔符這兩大類,這里將分別說明這兩種情況:

固定欄位長度的文本文件
就是每個欄位擁有固定的欄位長度,比如:
602530005922 1012
602538023138 1012
602536920355 1012
602531777166 1012
602533626494 1012
602535700601 1012

有分隔符的文本文件
就是每個欄位都有相同的分隔符分隔,比如:

1001,上海長途電信綜合開發公司,南京東路34號140室
1002,上海樺奇通訊科技有限公司,武寧路19號1902室
1003,上海邦正科技發展有限公司,南京東路61號903室

對於上述兩種文件格式sql*loader均可以做處理,下面就前面那個固定長度的文本來舉例說明:
由於該文本只有兩個欄位,一個為設備號,一個是區局編號,兩者的長度分別為20和5,那麼可以編制控制文件如下:
LOAD DATA
INFILE '/ora9i/fengjie/agent/data/ipaagent200410.txt'
TRUNCATE
INTO TABLE fj_ipa_agent
( DEVNO POSITION(1:20) CHAR,
BRANCH_NO POSITION(21:25) CHAR
)
其中,'/ora9i/fengjie/agent/data/ipaagent200410.txt'為該文件的完全路徑,POSITION(M:N)表示該欄位是從位置M到位置N。
對於有分隔符的數據文件,前面已經有一個例子,這里就不再贅述了。總之,使用Sql*Loader能夠輕松將數據文件導入到資料庫中,這種方法也是最常用的方法。
二、 使用專業的數據抽取工具
目前在數據倉庫領域中,數據抽取與裝載(ETL)是一重要的技術,這一技術對於一些大的數據文件或者文件數量較多尤其適合。這里簡單介紹目前一款主流的數據抽取工具 ――Informatica。
該工具主要採用圖形界面進行編程,其主要工作流程是:首先將源數據文件的結構(格式)導入為Informatica里,然後根據業務規則對該結構進行一定的轉換(transformation),最終導入到目標表中。
以上過程僅僅只是做了一個從源到目標的映射,數據的實際抽取與裝載需要在工作流(workflow)里進行。
使用專業的數據抽取工具,可以結合業務邏輯對多個源數據進行join,union,insect等操作,適合於大型資料庫和數據倉庫。
三、 使用Access工具導入
可以直接在Access里選擇『打開『文本文件,這樣按照向導來導入一個文本文件到Access資料庫中,然後使用編程的方法將其導入到最終的目標數據 庫中。
這種方法雖然煩瑣,但是其對系統的軟體配置要求相對較低,所以也是有一定的使用范圍

H. 如何將這個sql文件導入到資料庫中

方法一:

1、生成腳本導出導入sql2008全部數據,右鍵要導出的資料庫,任務--生成腳本。

I. c#連接資料庫的幾種方式

第一種方法:直接通過資料庫的用戶名、密碼等連接到資料庫進行資料庫連接。
如:private void sqlconn()
{
SqlConncetion conn = new SqlConnection("SERVER=.;DATABASE=pubs;PWD=;UID=sa;");
SqlConncetion cmd = new SqlCommand("SELECT*FROM [table]",cmd);
DataSet ds = new DataSet();
SqlDataAdapter adp = new SqlDataAdapter(cmd);
adp.Fill(ds);
}
其中SqlConnection 是資料庫連接類,SqlDataAdapter是數據適配器,SqlCommand是數據操作命令,即執行SQL語言。
說明,使用SqlConnection進行資料庫的連接,然後使用SqlCommand定義SQL查詢語句,再定義一個DataSet存儲查詢的結果,而SqlDataAdapter是資料庫和DataSet的轉換橋梁。

第二種方法:通過ConfigurationManager.ConnectionString獲取資料庫的配置信息。進行資料庫的連接。
如:public static int ExcuteNonQuery(string sql,params SqlParameter[] parameters)
{
string connStr = configurationManager.ConnectionStrings["ConnStr"].ConncetionString;
using(SqlConncetion conn=new SqlConnection(connStr))
{
conn.open();
using(SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = sql;
foreach(SqlParameter parameter in parameters)
{
cmd.Parameters.Add(parameter);
}
return cmd.ExecuteNonQuery();
}
}
}
說明:
(1) 通過string connStr=ConfigurationManager.ConnectionString[「ConnStr」].ConnectionString;獲得資料庫連接的一些配置信息,即「數據源」、「資料庫名」、「用戶名」、「密碼」,將這些信息都保存在connStr中。
(2) SqlConnection conn = new SqlConnection(connStr);創建一個資料庫連接對象conn,連接資料庫用conn.Open();
(3) SqlCommand cmd = new SqlCommand(「Select * Form [表]」,conn);
或者string sql = 「Select * From [表]」;
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = sql;這樣就把訪問資料庫的SQL語句存到了cmd中
(4) 建立SqlDataAdapter對象和DataSet對象
DataSet myDataSet = new DataSet();創建DataSet對象,
SqlDataAdapter myDataAdapter = new SqlDataAdapter(cmd);創建數據適配器對象。
(5) 填充DataSet:myDataAdapter.Fill(myDataSet);其實SqlDataAdapter數據適配器起的就是一個連接資料庫和數據集(DataSet)的橋梁作用,把對資料庫操作的SQL語句得到的結果傳到SqlDataAdapter對象中,在通過SqlDataAdapter.Fill(DataSet)方法,將結果填充到DataSet中。
第三種方法:用工廠方法
DbProviderFactory m_dbProviderFactory = DbProviderFactories.GetFacory(ConfigurationManager.ConnectionString[「ConStr」].ProviderName);//獲取工廠
DbConnection conn = m_dbProviderFactory.CreateConncetion();//創建連接
DbCommand cmd = m_dbProviderFactory.CreateCommand();//創建命令
cmd.Connection = conn;
cmd.CommandText = strSql;
cmd.CommandType = CommandType.Text;
DbDataAdapter dapter = m_dbProviderFactory.CreateDataAdapter();//創建適配器
dapter.SelectCommand = cmd;
dapter.Fill(DataSet ds = new DataSet());//填充
return ds;
說明:
上面的語句中用ConfigurationManager.ConnectionString[「ConStr」].ProviderName獲取了當前資料庫的名稱,因此可以適用於任何資料庫,如果這樣寫,就是不同的資料庫使用不同的語言:
SqlServer:DbProviderFactory factory = DbProviderFactories.GetFactory("System.Data.SqlClient");
Oracle:DbProviderFactory factory = DbProviderFactories.GetFactory("System.Data.OracleClient");
ODBC:DbProviderFactory factory = DbProviderFactories.GetFactory("System.Data.Odbc");
Access:DbProviderFactory factory = DbProviderFactories.GetFactory("System.Data.OleDb");

J. 如何將圖片存到資料庫中

保存圖片到資料庫中,有兩種方法:
1、一種是用大對象,即blob型,對c#不了解,但是java、c++中都有專門操作blob的對象,應該是以二進制流的方式走的。但是不建議採用這樣的管理方式,會加重資料庫、程序負擔,即使是手機開發也是如此。
2、圖片保存在本地,資料庫中用字元串存儲地址,這樣的方式比較好,也較易實現。但是缺乏安全性,把圖片重命名就行了,改個後綴,一般人就不會打開。還是不放心,用二進制加密下就好,這樣的程序代價仍然要比存在資料庫大對象中要好。