zoukankan      html  css  js  c++  java
  • TSQL小技巧

    1、NULL值加法运算的问题。
    如果NULL与其它值(如果varchar字符等)相加,则结果为NULL值,在一些组合字符的操作时这是不希望发生的,所以要使用ISNULL函数,当值为NULL时赋给一个默认的值。
    例如:
    DECLARE @location varchar(300)
    SET @location=''
    SELECT 
        
    @location=ISNULL(ri.location,''), 
    FROM job_ResumeInfo ri 
        
    WHERE ri.resumeid=@resumeid
    如果不使用ISNULL函数,而此时ri.location是NULL值的话,则永远都返回NULL值,如果加了ISNULL函数,则会返回''
    2、如果表字段为可空,一定要进行DBNull判断。
            private static bool IsDBNull(IDataReader dr, string name)
            
    {
                
    int index = dr.GetOrdinal(name);
                
    return dr.IsDBNull(index);
            }

            
    private static string GetString(IDataReader dr, string name)
            
    {
                
    if(!IsDBNull(dr, name))
                    
    return (string)dr[name];
                
    return null;
            }

            
    private static int GetInt32(IDataReader dr, string name)
            
    {
                
    if(!IsDBNull(dr, name))
                    
    return (int)dr[name];
                
    return 0;
            }

            
    private static DateTime GetDateTime(IDataReader dr, string name)
            
    {
                
    if(!IsDBNull(dr, name))
                    
    return (DateTime)dr[name];
                
    return DateTime.Now;
            }

            
    private static bool GetBoolean(IDataReader dr, string name)
            
    {
                
    if(!IsDBNull(dr, name))
                    
    return (bool)dr[name];
                
    return false;
            }

            
    private static Guid GetGuid(IDataReader dr, string name)
            
    {
                
    if(!IsDBNull(dr, name))
                    
    return (Guid)dr[name];
                
    return Guid.Empty;
            }

    3、如果原来装有SQL2000使用的是默认实例,现在又要安装SQL2005,则须为SQL2005配置一个自定义实例,要不不能进行SA登陆。如果使用自定义实例,则写连接字符串和企业管理器连接时,须在服务器名称后加上自定义实例的名称,如:CJB\SQL2005
  • 相关阅读:
    Java初试
    could not insert new action connection could not find any information for the class named
    GIT 从入门到放弃大整理
    'XCTest/XCTest.h' file not found
    The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.
    后台数据为空因此程序闪退
    UISearchController Attempting to load the view of a view controller while it is deallocating is not allowed and may result in undefined behavior
    AFNetworking request failed unacceptable content type text/html
    Xcode找不到模拟器
    如何查看设备的 UDID
  • 原文地址:https://www.cnblogs.com/chenjunbiao/p/1760261.html
Copyright © 2011-2022 走看看