Oracle命名的控制方法

来源:互联网 发布:mysql 升序 降序 desc 编辑:程序博客网 时间:2024/05/22 15:37

原创文章转载请注明:http://blog.csdn.net/ahshow/

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace PrjOpreateWrit
{
  public partial class FrmStr : Form
  {
    public FrmStr()
    {
        InitializeComponent();
    }

    private void FrmStr_Load(object sender, EventArgs e)
    {

    }

    private void button1_Click(object sender, EventArgs e)
    {
        MessageBox.Show(CheckString(textBox1.Text.ToUpper()).ToString());//把text转换大写
    }
    public string IsEnglish(string str)//判断是否英文并返回大写字符
    {
        str = str.ToUpper();
        string[] arr = new string[26];
        foreach (char c in str)
        {
          if (c < 'A' || c > 'Z')
          {
            return "非英文构成";
          }
          arr[(c - 'A')] += c;
        }
        return string.Join("", arr);
    }
    public bool IsEngBigFirst(string str)//判断首字母是否为大写
    {
        if (!char.IsUpper(str, 0))
        {
          return false;
        }
        else
        {
          //return str;
          return true;
        }
    }
    public string IsEngBigFirstChange(string str)//判断首字母是否为大写,并修改首字母为大写字母
    {
        if (!char.IsUpper(str, 0))
        {

          char[] chars = str.ToCharArray();
          chars[0] = char.ToUpper(chars[0]);
          string sStr = new string(chars);
          return sStr;
        }
        else
        {
          return str;
        }
    }
    public bool IsGoodCharFirst(string str)//判断首字符不为符号和数字
    {
        if (char.IsPunctuation(str, 0) == true)//是否标点符号
        {
          return false;
        }
        if (char.IsSymbol(str, 0) == true)//是否符号类别
        {
          return false;
        }
        if (char.IsSeparator(str, 0) == true)//是否分隔符
        {
          return false;
        }
        if (char.IsSurrogate(str, 0) == true)//是否代理项字符
        {
          return false;
        }
        if (char.IsWhiteSpace(str, 0) == true)//是否空白字符
        {
          return false;
        }
        if (char.IsDigit(str, 0) == true)//首字符是否为数字
        {
          return false;
        }
        return true;
    }

    public bool OutLength(string str)//判断长度是否超过
    {
        if (str.Length > 30)
        {
          return false;
        }
        else
        {
          return true;
        }
    }
    public bool IsBadName(string str)//判断是否包含保留字和关键字
    {
        //系统保留名称C#
        if (str.Length < 30)
        {
          string[] strArray ={"PAYMENT", "PYMT", "MY", "TRADE", "ACTIVITY", "MTA", "ACCESS", "DECIMAL", "INITIAL", "ON", "START", "ADD", "NOT",
            "INSERT" ,"ONLINE","SUCCESSFUL","ALL","DEFAULT","INTEGER","OPTION","SYNONYM","ALTER","DELETE","INTERSECT","OR","SYSDATE","AND",
            "DESC","INTO","ORDER","TABLE","ANY","DISTINCT","IS","PCTFREE","THEN","AS","DROP","LEVEL","PRIOR","TO","ASC","ELSE","LIKE",
            "PRIVILEGES","TRIGGER","AUDIT","EXCLUSIVE","LOCK","PUBLIC","UID","BETWEEN","EXISTS","LONG","RAW","UNION","BY","FILE","MAXEXTENTS",
            "RENAME","UNIQUE","FROM","FLOAT","MINUS","RESOURCE","UPDATE","CHAR","FOR","MLSLABEL","REVOKE","USER","CHECK","SHARE","MODE",
            "ROW","VALIDATE","CLUSTER","GRANT","MODIFY","ROWID","VALUES","COLUMN","GROUP","NOAUDIT","ROWNUM","VARCHAR","COMMENT","HAVING",
            "NOCOMPRESS","ROWS","VARCHAR2","COMPRESS","IDENTIFIED","NOWAIT","SELECT","VIEW","CONNECT","IMMEDIATE","NULL","SESSION","WHENEVER",
            "CREATE","IN","NUMBER","SET","WHERE","CURRENT","INCREMENT","OF","SIZE","WITH","DATE","INDEX","OFFLINE","SMALLINT"};
          for (int i = 0; i < strArray.Length; i++)
          {
            if (str== strArray)
            {
                return false;
            }
          }
          return true;
        }
        else
        {
          return true;
        }
    }
    public bool IsBadChar(string str)
    {
        if (str.Length > 0)
        {
          //"符号没添加
          string[] strArray ={ ".", "..", "/", "?", ":", "&", "*", "<", ">", "|", "#", "%", " ",
            ",", ";", "[", "]", "{", "}", "~", "`", "!", "@", "$", "^", "(", ")", "+", "=", "/"" };
          foreach (string i in strArray)
          {
            if (str.Contains(i) == true)
            {
                return false;
            }
          }
          return true;
        }
        else
        {
          return true;
        }
    }
    public string CheckString(string str)
    {

        string sInfo;
        //if (IsEngBigFirst(str) == false)
        //{
        //   return sInfo = "首字符必须为英文大写字母";
        //}
        if (IsGoodCharFirst(str) == false)
        {
          return sInfo = "首字符不能为符号和数字";
        }
        if (OutLength(str) == false)
        {
          return sInfo = "名称不能超过30字符";
        }
        if (IsBadName(str) == false)
        {
          return sInfo = "不能包含保留名称和关键字";
        }
        if (IsBadChar(str) == false)
        {
          return sInfo = "不能包含非法字符";
        }
        else
        {
          //char[] chars = str.ToCharArray();
          //chars[0] = char.ToUpper(chars[0]);
          //string sStr = new string(chars);
          return str;
        }
       
    }

  }
}
 

 

原创粉丝点击