• 操作sql2000中的text,image字段类型.


    在存贮过程里读写text,要用到READTEXT  UPDATETEXT  WRITETEXT  进行操作.

    在C#中,用select text from table 是可以直接取到值的.

    在做更新,新增操作时,用@text传text的值,也能正常赋值.

    text类型直接赋string

    image类型用byte[]

     insert:

    string strSql = "INSERT INTO [dbo].[Tableimg]( [img]) VALUES(@img) ";
    using (System.Data.SqlClient.SqlConnection myConnection = new System.Data.SqlClient.SqlConnection(CommConfig.InfodbConnectstring))
    {
        System.Data.SqlClient.SqlCommand myCommand 
    = new System.Data.SqlClient.SqlCommand(strSql, myConnection);
        myConnection.Open();
       
    string str = new string('X'100000);
       
    byte[] bytes = System.Text.Encoding.Default.GetBytes(str.ToCharArray());

        SqlParameter sp 
    = new SqlParameter("@img", SqlDbType.Image);
        sp.Value 
    = bytes;

        myCommand.Parameters.Add(sp);
        
    int re = myCommand.ExecuteNonQuery();

        myCommand.Dispose();
        myConnection.Close();
    }

    select:

    string strSql = "SELECT [id], [img] FROM [dbo].[Tableimg] where id = 1 ";

    using (System.Data.SqlClient.SqlConnection myConnection = new System.Data.SqlClient.SqlConnection(CommConfig.InfodbConnectstring))
    {
        System.Data.SqlClient.SqlCommand myCommand 
    = new System.Data.SqlClient.SqlCommand(strSql, myConnection);
        myConnection.Open();

        SqlDataReader dr 
    = myCommand.ExecuteReader();
        
    while (dr.Read())
        
    {
            Byte[] bytes 
    = (byte[])dr[1];
            
    string str = System.Text.Encoding.Default.GetString(bytes);
        }

        
        myCommand.Dispose();
        myConnection.Close();
    }
  • 相关阅读:
    vue keep-alive 缓存组件
    媒体查询手机屏幕横屏竖屏
    手机端rem
    vue技术栈导出pdf
    判断是否为微信浏览器还是支付宝浏览器
    当前时间和倒计时效果
    npm install 报错node-sass模块找不到
    Lenovo System x3650 设置管理接口地址
    Python之excel文件追加内容
    python3 文件操作
  • 原文地址:https://www.cnblogs.com/greatqn/p/637117.html
Copyright © 2020-2023  润新知