在編輯器里編輯之後存儲比較容易實現。
相應的資料庫欄位設計成Long類型的就可以了。
但是插入和讀取的時候有兩點需要注意:
讀取的時候Long類型的欄位要從rs中第一個讀出。
zh-l-w
2. 怎樣在Word中創建資料庫
給您一段代碼,供參考,如有問題,QQ:375267128,傳給您一個完整的實例,使用時請引用一下Microsoft Word 11.0 Object Library
Function ZWord1(模板名, 文件名, 記錄集, 起始行, 表號, Optional 條件 As String)
Dim doc As New Word.Document ' 定義引用 Microsoft Word 的變數。
Dim BTable As Word.Table
Dim dbs As Database '定義引用資料庫的變數。
Dim rst As DAO.Recordset '定義引用記錄集的變數。
Dim I, J, P As Integer
Dim s As String
'On Error GoTo err1
'使用DAO操作打開明細記錄集
Set dbs = CurrentDb()
If Nz(條件) <> "" Then 記錄集 = "select * from " & 記錄集 & " where " & 條件
Set rst = dbs.OpenRecordset(記錄集) '設置記錄集
If InStr(1, UCase(模板名), ".DOC") > 0 Then
WJ1 = CurrentProject.Path & "\" & 模慶此板名
'模板文件名(CurrentProject.Path為當前資料庫的路徑)
Else
WJ1 = CurrentProject.Path & "\" & 模板名 & ".DOC"
'模板文件名(CurrentProject.Path為當前資料庫的路徑)
End If
If InStr(1, UCase(文件名), ".DOC") > 0 Then
WJ2 = CurrentProject.Path & "\" & 文件名 '目標文件名
Else
WJ2 = CurrentProject.Path & "\" & 文件名 & ".DOC" '目標文件名
End If
FileCopy WJ1, WJ2 '拷貝文件(模隱慧板文件拷貝成目標文件)
Set doc = GetObject(WJ2, "Word.Document") '建立與Word的連接變數
doc.Application.Visible = True '打開屬性為真
doc.Activate
Set BTable = doc.Application.ActiveDocument.Tables(表號)
Set rst = dbs.OpenRecordset(記錄集) '設置記錄集
If Not rst.EOF Then rst.MoveFirst
I = 起始行
While Not rst.EOF
Set rowNew = BTable.Rows.Add() '加入一行
J = 0
For Each HCell In BTable.Rows(I).Cells
HCell.Range.InsertAfter Nz(rst.Fields(J))
J = J + 1
Next HCell
rst.MoveNext
I = I + 1
Wend
doc.Save '保存Word
doc.Application.Quit '關閉Word
Set doc = Nothing '清除內存變數
Set BTable = Nothing
Set dbs = Nothing
Set rst = Nothing
ZWord1 = True
Exit Function
err1:
doc.Application.Quit
Set doc = Nothing '清除內譽攜迅存變數
Set BTable = Nothing
Set dbs = Nothing
Set rst = Nothing
ZWord1 = False
MsgBox ("出現錯誤,可能是Word已打開,請關閉Word後再試")
End Function
3. 如何向Access資料庫中導入Word文本文檔
1、在Word中將文件另存為用逗號分隔或用製表符分隔的文本文件;
9、根據「導入文本向導」對話框中的指導進行操作;
如果,需要查看更多的選項或修改指導項(比如域分隔符),可單擊第一個向導對話框中的「高級」命令。如果要保存指定項,以便下次導入相似的文本文件時可用它們,請單擊「另存為」命令。
4. C# sql資料庫中word文檔的保存和讀取
在Sql Server中存儲、讀寫Word文件,需要將指定表欄位添加為Image類型,示例表結構為:
1 CREATE TABLE CONTRACTS (
2 ID VARCHAR (50),
3 CONTRACT_FILE IMAGE
4 );
CONTRACT_FILE欄位就是要存儲Word文件的欄位,在存儲前,有一個小插曲,你需要將Word文件轉換為byte數組,可參考以下代碼實現:
1 //將文件轉換為byte數組
2 public static byte[] File2Bytes(string fileName)
3 {
4 FileStream fs = new FileStream(fileName,FileMode.OpenOrCreate, FileAccess.Read);
5 byte[] fileDatas = new byte[fs.Length];
6 fs.Read(fileDatas, 0, System.Convert.ToInt32(fs.Length));
7 fs.Close();
8 return fileDatas;
9 }
接下來就是將轉換後的byte[]數組存儲到SqlServer的對應欄位中,具體實現代碼可看如下代碼段:
01 //將文件存儲到資料庫
02 public bool UpdateContractFile(string id, byte[] fileBytes)
03 {
04 string sql = "UPDATE CONTRACTS SET CONTRACT_FILE=@CONTRACT_FILE WHERE ID=@ID";
05 using (SqlConnection conn = new SqlConnection(this.m_DataAccess.ConnectString))
06 {
07 conn.Open();
08 using (SqlCommand cmd = new SqlCommand())
09 {
10 cmd.Connection = conn;
11 cmd.CommandText = sql;
12 cmd.Parameters.Clear();
13 cmd.Parameters.Add(new SqlParameter("@CONTRACT_FILE", SqlDbType.Image));
14 cmd.Parameters["@CONTRACT_FILE"].Value = fileBytes;
15 cmd.Parameters.Add(new SqlParameter("@ID", SqlDbType.VarChar));
16 cmd.Parameters["@ID"].Value = id;
17 return cmd.ExecuteNonQuery() > 0 ? true : false;
18 }
19 }
20 }
同時,因之前轉換了數據類型,所以從資料庫中讀取Word文件時,要先將Image類型的欄位轉換為bytes[],代碼如下:
01 //通過ID獲取文件byte數組
02 public byte[] GetContractFile(string id)
03 {
04 string sql = "SELECT CONTRACT_FILE FROM CONTRACTS WHERE ID='{0}'";
05 sql = string.Format(sql, id);
06 object contractFile;
07 contractFile = this.m_DataAccess.ExecuteScalar(sql);
08 if (contractFile == null)
09 {
10 return new byte[0];
11 }
12 else
13 {
14 return (byte[])contractFile;
15 }
16 }
在獲取到文件的byte[]後,將該文件再通過文件流存儲為Word文件,以下代碼可實現此功能:
01 //將byte[]數組存儲為Word文件
02 byte[] fileBytes = this.m_ContractsBusiness.GetContractFile(id);
03 if (fileBytes.Length == 0)
04 {
05 XMessageBox.ShowError("未找到合同文件!");
06 return;
07 }
08 SaveFileDialog sfd = new SaveFileDialog();
09 sfd.Filter = "Word文件(*.doc)|*.doc";
10 if (sfd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
11 {
12 try
13 {
14 string saveFileName = sfd.FileName;
15 int arraysize = new int();
16 arraysize = fileBytes.GetUpperBound(0);
17 FileStream fs = new FileStream(saveFileName, FileMode.OpenOrCreate, FileAccess.Write);
18 fs.Write(fileBytes, 0, arraysize);
19 fs.Close();
20 if (XMessageBox.ShowQuestion("文件存儲成功,是否立即打開文件?") ==
21 System.Windows.Forms.DialogResult.Yes)
22 {
23 Process.Start(saveFileName);
24 }
25 }
26 catch (Exception ex)
27 {
28 XMessageBox.ShowError("操作失敗!");
29 }
上面的幾段代碼只是核心代碼,並不是完整的代碼段,用時候要看清,自己再修改下。
5. word文檔存入資料庫,資料庫表裡的欄位類型應該設置成什麼
在sql server中將仔備要存儲word文檔的表的欄位的datatype設為image.(image類型並不一定要存圖象,它是二進制格式存儲念迅毀,任何數據均可,如果存多種類型, 可利用另一欄位存文件類型,並不需要知道文件格式)
數據存取方法用ADO時可利用AppendChunk 和GetChunk來存取image欄位,在delphi中根據你採用的數據存取昌手方法,可利用類似函數.
6. 如何把資料庫的內容寫入到word文檔中
您好:首先你需要根據你的內容來設計資料庫表的結構
例如米的睜數所有題目閉銷都是四個選項的選擇題那麼可以轎早游如下設計
主鍵,題目內容,選項1,選項2,選項3,選項4,答案,排序號
這樣錄入的時候每道題對應一條數據即可
7. 如何把資料庫裡面的數據放置到WORD模板中
我能想到的方法有兩種:
1、將資料庫導成word文檔或excel表格,利用word中的郵件合並功能合成你想要的文件,應該是比較簡單
2、用網頁生成的模式,調取記錄集,是要編程的
8. 怎麼把SQL資料庫表的結構導出到Word
首先將SQL數據導出到EXCEL:
在SQL資料庫的很多應用場景中,需要將SQL中的某個資料庫或查詢的結果導出到EXCEL中,因為Excel更容易對數據處理和方便用戶郵箱傳輸。本次經驗歸納了SQL數據表導出到EXCEL中的三種方法:
1、復制粘貼,將SQL查詢語句按指定條件導出數據;——適合小量數據。
2、導出完整的SQL數據表為Excel文件;——適合大量數據。
3、定時自動導出指定SQL數據表為Excel文件;——適合大量數據。
其它:DTS數據轉換服務導入導出向導或者DTS設計器創建DTS包;
然後再把excel 轉換word
分兩個步驟:
1.07版EXCEL 的專用文件格式為xlsx,03版的格式為xls;
A.EXCEL打開這個文件,選擇另存為(快捷鍵F12)在下面的版本中選擇97-2003格式就可以了;
B.假如你的OFFICE 是2003 ,可以裝一個office2007兼容包,就可以用03打開07版本的文件了,然後在下面的版本中選擇97-2003格式就可以了;
2.打開WORD 。啟動WORD→新建文檔→插入→對象→microsoft Excel工作表→由文件創建→瀏覽→找到xls文件雙擊→(可以選擇工作表,更改版式等操作)→保存為.doc後綴即可。
9. 如何將access資料庫轉為word文檔
在access中打開資料庫,選中要轉換的表,通過:
菜單中選擇文件→導出,保存類型選「HTML文檔」,確定保存後,可在新保存的文檔上單擊滑鼠右鍵,呼出菜單選打開方式→選擇程序→Microsoft
Office
Word,即可打開,但表的列名卻無法導過來;
或access菜單中選擇文件→導出,保存類型選「Microsoft
Excel
97-2000」,確定保存後,打開該EXCEL文檔,全選→復制,在Microsoft
Word中新建空白文檔,粘貼,此法可導入完整內容,包括原表列名。
如果資料庫中表很多,那隻能一個個導了。
10. 數據插入Word 表格步驟
數據插入Word 表格步驟
(1)單擊【資料庫】工具欄上的【插入資料庫】按鈕,出現【數 據庫】對話框,如圖4-33 所示。
(2)單擊【獲取數據】按鈕,彈出【選擇數據源】對話框,類 似於打開文檔窗口。
(3)選定合適的數據源文件,文件類型可以是Word 表格文檔(指 只包括一個Word 表格而無其他文本的文檔)、Excel 工作表、 FoxPro/dBASE 資料庫等。
(4)單擊【確定】按鈕打開它。
(5)如果要按照一定條件插入記錄,單擊【查詢選項】按鈕, 彈出查詢選項對話窗口,單擊【篩選記錄】選項卡,如圖4-34 所示。
(6)在篩選記錄選項卡中輸入一個或多個條件關系式。
(7)如果需要按一定的順序插入數據記錄,那麼單擊【排序記 錄】選項卡。
(8)設定記錄排序的條件。
(9)如果不打算在文檔插入記錄的.所有欄位,只想有選擇地插 入幾個,單擊【選擇域】選項卡。
(10)通過刪除【選定域】列表框中的欄位來選擇插入哪些欄位。
(11)如果插入的表格中希核嫌望插入欄位名,選中【包含域名】復 選框。
(12)全部選項條件設定完畢,單擊【確臘閉定】按鈕返回。
(13)單擊【表格自動套用格式】按鈕,可以選擇表格格式並返回。
(14)單擊【插入數據】按鈕,彈出插入數據對話窗口。
(15)在【插入數據】組框中選擇記錄范圍,可以選擇全部或部 分。
(16)如果希望數據插入文檔後還可輪氏裂以隨數據源的更新而自動更 新文檔中的數據,選中【將數據作為域插入】復選框。
(17)單擊【確定】按鈕,Word 2000 按選定條件將數據插入到 Word 表格中。
;