六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

簡單教你SQL轉ACCESS_mssql數(shù)據(jù)庫

[摘要]SQL數(shù)據(jù)庫轉access數(shù)據(jù)庫步驟: 1. 建立access數(shù)據(jù)庫:在access中建立access數(shù)據(jù)庫和表,access字段類型與sql中字段類型的對應關系。 2. ...

 SQL數(shù)據(jù)庫轉access數(shù)據(jù)庫步驟:

    1.      建立access數(shù)據(jù)庫:在access中建立access數(shù)據(jù)庫和表,access字段類型與sql中字段類型的對應關系。

    2.          在Access中建表是應注意它的保留關鍵字:比如Password 如果表中的某個字段使用了關鍵字,那么會導致一系列的語句錯誤。比如update T_Users setUsername=@Username,Password=@Password where UserId=@UserId"此時就會提示"System.Data.OleDb.OleDbException: UPDATE 語句的語法錯誤".更多保留關鍵字可以參照互聯(lián)網(wǎng)。

    3.      從sql導入數(shù)據(jù)到access數(shù)據(jù)庫。

    注意:sql2008只能導出到access2007一下的版本的數(shù)據(jù)庫。

    Asp.net應做的修改

    1.        修改連接字符串:

    將<add name="DBStr"connectionString="data source=.;Database=shelian;integratedsecurity=true"/>改為

    <addname ="DBStr"connectionString ="Provider=Microsoft.Jet.OLEDB.4.0;DataSource= DataDirectory shelian.mdb"providerName ="System.Data.OleDb"/>

    提示:其中"Jet.OLEDB.4.0"對應的是access2003版本," DataDirectory "表示數(shù)據(jù)庫在App_Date目錄下。

    2.   導入 using System.Data.OleDb;命名空間。

    將以Sql開頭的SqlConnection , SqlCommand , SqlParameter, SqlDataAdapter, SqlParameter, SqlDataReader,SqlType等改成OleDbConnection ,OleDbCommand , OleDbParameter,OleDbDataAdapter, OleDbParameter, OleDbDataReader, OleDbType.

    3.   修改。net文件中要操作的表中字段類型的

    new SqlParameter("@CategoryName",SqlDbType.NVarChar,100),

    newSqlParameter("@ParentId",SqlDbType.NVarChar,50),

    newSqlParameter("@Path",SqlDbType.NVarChar,200),

    newSqlParameter("@Depth",SqlDbType.Int,4),

    newSqlParameter("@ChildIds",SqlDbType.NVarChar,50),

    newSqlParameter("@IsActive",SqlDbType.Bit,1),

    newSqlParameter("@ArticleNum",SqlDbType.Int,4),

    newSqlParameter("@Readme",SqlDbType.NVarChar,200),

    newSqlParameter("@CategoryId",SqlDbType.Int,4)};

    改成:

    new OleDbParameter("@CategoryName", OleDbType.LongVarWChar,100),

    new OleDbParameter("@ParentId", OleDbType.LongVarWChar,50),

    new OleDbParameter("@Path", OleDbType.LongVarWChar,200),

    new OleDbParameter("@Depth", OleDbType.Integer,4),

    newOleDbParameter("@ChildIds",OleDbType.LongVarWChar,50),

    new OleDbParameter("@IsActive", OleDbType.Boolean,1),

    new OleDbParameter("@ArticleNum", OleDbType.Integer,4),

    new OleDbParameter("@Readme", OleDbType.LongVarWChar,200),

    new OleDbParameter("@CategoryId", OleDbType.Integer,4)};

    4.   修改查詢字語句式:

    4.1  將去掉true或false的單引號,如HomeShowImg='true '改成HomeShowImg=true

    4.2  !=0改成<>0  ,如 IsPicNews !=0    -> IsPicNews <>0

    4.3  =''改成is null.與LogImagePath !='  -> LogImagePath is not nul

    4.4    NewsId ='" + newsiid + "'";改成NewsId =" + newsiid + "";

5.   當update語句沒錯但內容無法更新而且VS又沒提示出錯的時候,可以考慮是不是OleDbParameter中參數(shù)的對應順序的問題,OleDbParameter參數(shù)的順序迎合update語句中出現(xiàn)的順序保持一致。

    比如:   string cmdText = "updateT_FriendlyLink set IsShown=@IsShown,LinkUrl=@txtUrl,LinkText=@txtTitle whereId=@Id";

    OleDbParameter[]ps ={

    newOleDbParameter ("@Id",Id),

    newOleDbParameter ("@IsShown",IsShown),

    newOleDbParameter ("@txtUrl",txtUrl),

    newOleDbParameter ("@txtTitle",txtTitle),

    };

    這樣在SQLServer中可以運行,但在Access中必須改成

    OleDbParameter[]ps ={

    newOleDbParameter ("@IsShown",IsShown),

    newOleDbParameter ("@txtUrl",txtUrl),

    newOleDbParameter ("@txtTitle",txtTitle),

    new OleDbParameter ("@Id",Id),

    };

    6.Access不支持:select @@IDENTITY

    7.Access不支持OW_NUMBER() OVER聚合函數(shù)。當分頁時可使用"select a.* from (select top{0} * from t_news {2} {3}) a  leftjoin  (select top {1} * from t_news {2}{3}) b on a.NewsId=b.NewsId where iif(b.NewsId,'0','1')='1'", endIndex, startIndex-1, swhere, sorder));替代。

    8. 在Access 不能出現(xiàn)top 0或top一個負數(shù)。 如select top 0 * fromt_news where isshown=true則會報錯:"SELECT子句中包含一個保留字、拼寫錯誤或丟失的參數(shù),或標點符號不正確。"

    Access數(shù)據(jù)庫字段類型說明以及與SQL之間的對照關系

    文本 nvarchar(n)

    備注 ntext

    數(shù)字(長整型) int

    數(shù)字(整型) smallint

    數(shù)字(單精度) real

    數(shù)字(雙精度) float

    數(shù)字(字節(jié)) tinyint

    貨幣 money

    日期 smalldatetime

    布爾 bit

    附:轉換成SQL的腳本。

    ALTER TABLE tbALTER COLUMN aa Byte 數(shù)字[字節(jié)]

    ALTER TABLE tb ALTER COLUMN aa Long 數(shù)字[長整型]

    ALTER TABLE tb ALTER COLUMN aa Short 數(shù)字[整型]

    ALTER TABLE tb ALTER COLUMN aa Single 數(shù)字[單精度

    ALTER TABLE tb ALTER COLUMN aa Double 數(shù)字[雙精度]

    ALTER TABLE tb ALTER COLUMN aa Currency 貨幣

    ALTER TABLE tb ALTER COLUMN aa Char 文本

    ALTER TABLE tb ALTER COLUMN aa Text(n) 文本,其中n表示字段大小

    ALTER TABLE tb ALTER COLUMN aa Binary 二進制

    ALTER TABLE tb ALTER COLUMN aa Counter 自動編號

    ALTER TABLE tb ALTER COLUMN aa Memo 備注

    ALTER TABLE tb ALTER COLUMN aa Time 日期/時間

    在表的設計視圖中,每一個字段都有設計類型,Access允許九種數(shù)據(jù)類型:文本、備注、數(shù)值、日期/時間、貨

    幣、自動編號、是/否、OLE對象、超級鏈接、查詢向導。

    文本:這種類型允許最大255個字符或數(shù)字,Access默認的大小是50個字符,而且系統(tǒng)只保存輸入到字段中的

    字符,而不保存文本字段中未用位置上的空字符。可以設置"字段大小"屬性控制可輸入的最大字符長度。

    備注:這種類型用來保存長度較長的文本及數(shù)字,它允許字段能夠存儲長達64000個字符的內容。但Access不

    能對備注字段進行排序或索引,卻可以對文本字段進行排序和索引。在備注字段中雖然可以搜索文本,但卻不如

    在有索引的文本字段中搜索得快。

    數(shù)字:這種字段類型可以用來存儲進行算術計算的數(shù)字數(shù)據(jù),用戶還可以設置"字段大小"屬性定義一個特定

    的數(shù)字類型,任何指定為數(shù)字數(shù)據(jù)類型的字型可以設置成"字節(jié)"、"整數(shù)"、"長整數(shù)"、"單精度數(shù)"、

    "雙精度數(shù)"、"同步復制ID"、"小數(shù)"五種類型。在Access中通常默認為"雙精度數(shù)".

    日期/時間:這種類型是用來存儲日期、時間或日期時間一起的,每個日期/時間字段需要8個字節(jié)來存儲空間。

    貨幣:這種類型是數(shù)字數(shù)據(jù)類型的特殊類型,等價于具有雙精度屬性的數(shù)字字段類型。向貨幣字段輸入數(shù)據(jù)

    時,不必鍵入人民幣符號和千位處的逗號,Access會自動顯示人民幣符號和逗號,并添加兩位小數(shù)到貨幣字段。

    當小數(shù)部分多于兩位時,Access會對數(shù)據(jù)進行四舍五入。精確度為小數(shù)點左方15位數(shù)及右方4位數(shù)。

    自動編號:這種類型較為特殊,每次向表格添加新記錄時,Access會自動插入唯一順序或者隨機編號,即在自

    動編號字段中指定某一數(shù)值。自動編號一旦被指定,就會永久地與記錄連接。如果刪除了表格中含有自動編號字

    段的一個記錄后,Access并不會為表格自動編號字段重新編號。當添加某一記錄時,Access不再使用已被刪除的

    自動編號字段的數(shù)值,而是重新按遞增的規(guī)律重新賦值。

    是/否:這種字段是針對于某一字段中只包含兩個不同的可選值而設立的字段,通過是/否數(shù)據(jù)類型的格式特性,用戶可以對是/否字段進行選擇。

    OLE對象:這個字段是指字段允許單獨地"鏈接"或"嵌入"OLE對象。添加數(shù)據(jù)到OLE對象字段時,可以鏈接或嵌入Access表中的OLE對象是指在其他使用OLE協(xié)議程序創(chuàng)建的對象,例如WORD文檔、EXCEL電子表格、圖像、聲音或其他二進制數(shù)據(jù)。OLE對象字段最大可為1GB,它主要受磁盤空間限制。

    超級鏈接:這個字段主要是用來保存超級鏈接的,包含作為超級鏈接地址的文本或以文本形式存儲的字符與數(shù)字的組合。當單擊一個超級鏈接時,WEB瀏覽器或Access將根據(jù)超級鏈接地址到達指定的目標。超級鏈接最多可包含三部分:一是在字段或控件中顯示的文本;二是到文件或頁面的路徑;三是在文件或頁面中的地址。在這個字段或控件中插入超級鏈接地址最簡單的方法就是在"插入"菜單中單擊"超級鏈接"命令。

    查閱向導:這個字段類型為用戶提供了一個建立字段內容的列表,可以在列表中選擇所列內容作為添入字段的內容。


Microsoft Access在很多地方得到廣泛使用,例如小型企業(yè),大公司的部門。




主站蜘蛛池模板: 亚洲精品综合在线 | 婷婷激情五月网 | 天堂视频网站 | 午夜免费看| 天天干天天干天天色 | 香蕉成人福利片视频在线下载 | 天堂亚洲国产日韩在线看 | 亚洲国产成a人v在线 | 天天爽天天干 | 一级女性全黄久久生活片 | 伊人婷婷色香五月综合缴激情 | 青青成人福利国产在线视频 | 日韩99| 日本邪恶全彩 | 天天插天天搞 | 五月综合激情 | 午夜免费啪啪 | 香蕉视频在线观看免费国产婷婷 | 亚洲综合小说网 | 亚洲国产精品线在线观看 | 青青草华人在线视频 | 污污在线观看视频 | 日皮毛片 | 欧美视频免费看 | 永久免费精品影视网站 | 日本高清视频网址 | 热热色国产 | 四虎影院免费在线播放 | 中文字幕日本一区波多野不卡 | 伊人婷婷色香五月综合缴激情 | 日本视频播放免费线上观看 | 日韩在线天堂免费观看 | 欧美在线观看不卡 | 色在线网 | 伊人直| 在线观看亚洲免费视频 | 亚洲成a人v欧美综合天堂下载 | 欧美影院在线观看在线观看看 | 日本免费观看视频 | 日韩欧美视频在线一区二区 | 深爱五月网 |