コード例 #1
0
ファイル: DBSchemaDriverBase.cs プロジェクト: rsdn/janus
		protected abstract string ParseColumnAlter(TableColumnSchema mColumn, TableColumnSchema eColumn);
コード例 #2
0
ファイル: DBSchemaDriverBase.cs プロジェクト: rsdn/janus
		protected virtual string MakeDdlColumnDrop(TableColumnSchema column, TableSchema table)
		{
			return string.Format(@"ALTER TABLE {0} DROP COLUMN {1}",
				MakeDdlElementName(table.Name), MakeDdlElementName(column.Name));
		}
コード例 #3
0
ファイル: DBSchemaDriverBase.cs プロジェクト: rsdn/janus
		protected abstract string ParseColumn(TableColumnSchema column);
コード例 #4
0
ファイル: DBSchemaDriverBase.cs プロジェクト: rsdn/janus
		private string MakeDdlColumnCreate(TableColumnSchema column, TableSchema table)
		{
			return string.Format(@"ALTER TABLE {0} ADD {1}",
				MakeDdlElementName(table.Name), ParseColumn(column));
		}
コード例 #5
0
ファイル: DBSchemaDriverBase.cs プロジェクト: rsdn/janus
		protected virtual string MakeDdlColumnAlter(TableColumnSchema mColumn, TableColumnSchema eColumn,
			TableSchema table)
		{
			return string.Format(@"ALTER TABLE {0} ALTER COLUMN {1}",
				MakeDdlElementName(table.Name), ParseColumnAlter(mColumn, eColumn));
		}
コード例 #6
0
ファイル: DBSchemaDriverBase.cs プロジェクト: rsdn/janus
		public virtual IDbDataParameter ConvertToDbParameter(TableColumnSchema column,
			IDbDataParameter parameter)
		{
			parameter.ParameterName = MakeParameterName(column);

			switch (column.Type)
			{
				case ColumnType.Integer:
					parameter.DbType = DbType.Int32;
					break;
				case ColumnType.NCharacterVaring:
				case ColumnType.BlobSubtypeNText:
					parameter.DbType = DbType.String;
					break;
				case ColumnType.Timestamp:
					parameter.DbType = DbType.DateTime;
					break;
				case ColumnType.Boolean:
					parameter.DbType = DbType.Boolean;
					break;
				case ColumnType.TinyInt:
					// Unsigned for some reason
					//
					parameter.DbType = DbType.Byte;
					break;
				case ColumnType.SmallInt:
					parameter.DbType = DbType.Int16;
					break;
				default:
					throw new NotSupportedException(@"Unsupported column type " + column.Type);
			}

			return parameter;
		}
コード例 #7
0
ファイル: DBSchemaDriverBase.cs プロジェクト: rsdn/janus
		protected virtual string MakeParameterName(TableColumnSchema column)
		{
			return @"@" + column.Name;
		}
コード例 #8
0
 protected abstract string ParseColumn(TableColumnSchema column);
コード例 #9
0
 protected abstract string ParseColumnAlter(TableColumnSchema mColumn, TableColumnSchema eColumn);
コード例 #10
0
 protected virtual string MakeDdlColumnDrop(TableColumnSchema column, TableSchema table)
 {
     return(string.Format(@"ALTER TABLE {0} DROP COLUMN {1}",
                          MakeDdlElementName(table.Name), MakeDdlElementName(column.Name)));
 }
コード例 #11
0
 protected virtual string MakeDdlColumnAlter(TableColumnSchema mColumn, TableColumnSchema eColumn,
                                             TableSchema table)
 {
     return(string.Format(@"ALTER TABLE {0} ALTER COLUMN {1}",
                          MakeDdlElementName(table.Name), ParseColumnAlter(mColumn, eColumn)));
 }
コード例 #12
0
 private string MakeDdlColumnCreate(TableColumnSchema column, TableSchema table)
 {
     return(string.Format(@"ALTER TABLE {0} ADD {1}",
                          MakeDdlElementName(table.Name), ParseColumn(column)));
 }
コード例 #13
0
 protected virtual string MakeParameterName(TableColumnSchema column)
 {
     return(@"@" + column.Name);
 }
コード例 #14
0
ファイル: SchemaHelper.cs プロジェクト: rsdn/janus
		public static bool IsExactColumn(this TableSchema table, TableColumnSchema inputColumn)
		{
			if (inputColumn == null)
				return false;
			var column = table.GetColumn(inputColumn.Name);
			return column != null && column.Equals(inputColumn);
		}