本文整理匯總了Python中sqlalchemy.sql.sqltypes.Boolean方法的典型用法代碼示例。如果您正苦於以下問題:Python sqltypes.Boolean方法的具體用法?Python sqltypes.Boolean怎麽用?Python sqltypes.Boolean使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類sqlalchemy.sql.sqltypes
的用法示例。
在下文中一共展示了sqltypes.Boolean方法的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: test_notna_dtype
# 需要導入模塊: from sqlalchemy.sql import sqltypes [as 別名]
# 或者: from sqlalchemy.sql.sqltypes import Boolean [as 別名]
def test_notna_dtype(self):
cols = {'Bool': Series([True, None]),
'Date': Series([datetime(2012, 5, 1), None]),
'Int': Series([1, None], dtype='object'),
'Float': Series([1.1, None])
}
df = DataFrame(cols)
tbl = 'notna_dtype_test'
df.to_sql(tbl, self.conn)
returned_df = sql.read_sql_table(tbl, self.conn) # noqa
meta = sqlalchemy.schema.MetaData(bind=self.conn)
meta.reflect()
if self.flavor == 'mysql':
my_type = sqltypes.Integer
else:
my_type = sqltypes.Boolean
col_dict = meta.tables[tbl].columns
assert isinstance(col_dict['Bool'].type, my_type)
assert isinstance(col_dict['Date'].type, sqltypes.DateTime)
assert isinstance(col_dict['Int'].type, sqltypes.Integer)
assert isinstance(col_dict['Float'].type, sqltypes.Float)
示例2: test_dtype
# 需要導入模塊: from sqlalchemy.sql import sqltypes [as 別名]
# 或者: from sqlalchemy.sql.sqltypes import Boolean [as 別名]
def test_dtype(self):
if self.flavor == 'mysql':
pytest.skip('Not applicable to MySQL legacy')
cols = ['A', 'B']
data = [(0.8, True),
(0.9, None)]
df = DataFrame(data, columns=cols)
df.to_sql('dtype_test', self.conn)
df.to_sql('dtype_test2', self.conn, dtype={'B': 'STRING'})
# sqlite stores Boolean values as INTEGER
assert self._get_sqlite_column_type(
'dtype_test', 'B') == 'INTEGER'
assert self._get_sqlite_column_type(
'dtype_test2', 'B') == 'STRING'
pytest.raises(ValueError, df.to_sql,
'error', self.conn, dtype={'B': bool})
# single dtype
df.to_sql('single_dtype_test', self.conn, dtype='STRING')
assert self._get_sqlite_column_type(
'single_dtype_test', 'A') == 'STRING'
assert self._get_sqlite_column_type(
'single_dtype_test', 'B') == 'STRING'
示例3: test_datatype
# 需要導入模塊: from sqlalchemy.sql import sqltypes [as 別名]
# 或者: from sqlalchemy.sql.sqltypes import Boolean [as 別名]
def test_datatype(self, table, column):
"""Tests that database column datatype matches the one defined in the
models.
"""
database_column = self.find_database_column(table, column)
if isinstance(column.type, sqltypes.String):
expected_type = sqltypes.VARCHAR
elif isinstance(column.type, sqltypes.Integer):
expected_type = sqltypes.INTEGER
elif isinstance(column.type, sqltypes.Boolean):
expected_type = sqltypes.BOOLEAN
elif isinstance(column.type, sqltypes.DateTime):
expected_type = sqltypes.DATETIME
if not isinstance(database_column['type'], expected_type):
self.errors.append(
DatatypeMismatch(table, database_column, expected_type,
parent=self)
)
示例4: sql_func_astype
# 需要導入模塊: from sqlalchemy.sql import sqltypes [as 別名]
# 或者: from sqlalchemy.sql.sqltypes import Boolean [as 別名]
def sql_func_astype(col, _type):
mappings = {
str: types.Text,
'str': types.Text,
int: types.Integer,
'int': types.Integer,
float: types.Numeric,
'float': types.Numeric,
bool: types.Boolean,
'bool': types.Boolean
}
try:
sa_type = mappings[_type]
except KeyError:
raise ValueError("sql astype currently only supports type objects: str, int, float, bool")
return sql.cast(col, sa_type)
# Base translations ===========================================================
示例5: init_modify_type
# 需要導入模塊: from sqlalchemy.sql import sqltypes [as 別名]
# 或者: from sqlalchemy.sql.sqltypes import Boolean [as 別名]
def init_modify_type(self, diff):
if sgdb_in(self.migration.conn.engine, ['MySQL', 'MariaDB']):
if isinstance(diff[5], TINYINT) and isinstance(diff[6], Boolean):
# Boolean are TINYINT in MySQL DataBase
return True
if sgdb_in(self.migration.conn.engine, ['MsSQL']):
if isinstance(diff[5], BIT) and isinstance(diff[6], Boolean):
# Boolean are TINYINT in MySQL DataBase
return True
table = "%s.%s" % diff[1:3] if diff[1] else diff[2]
self.log_names.append("Modify column type %s.%s : %s => %s" % (
table, diff[3], diff[5], diff[6]))
return False
示例6: test_get_columns
# 需要導入模塊: from sqlalchemy.sql import sqltypes [as 別名]
# 或者: from sqlalchemy.sql.sqltypes import Boolean [as 別名]
def test_get_columns(self):
description = [
('datetime', Type.DATETIME, None, None, None, None, True),
('number', Type.NUMBER, None, None, None, None, True),
('boolean', Type.BOOLEAN, None, None, None, None, True),
('date', Type.DATE, None, None, None, None, True),
('timeofday', Type.TIMEOFDAY, None, None, None, None, True),
('string', Type.STRING, None, None, None, None, True),
]
connection = Mock()
connection.execute = Mock()
result = Mock()
result._cursor_description = Mock()
result._cursor_description.return_value = description
connection.execute.return_value = result
dialect = GSheetsDialect()
url = make_url('gsheets://docs.google.com/')
dialect.create_connect_args(url)
result = dialect.get_columns(connection, 'SOME TABLE')
expected = [
{
'name': 'datetime',
'type': sqltypes.DATETIME,
'nullable': True,
'default': None,
},
{
'name': 'number',
'type': sqltypes.Numeric,
'nullable': True,
'default': None,
},
{
'name': 'boolean',
'type': sqltypes.Boolean,
'nullable': True,
'default': None,
},
{
'name': 'date',
'type': sqltypes.DATE,
'nullable': True,
'default': None,
},
{
'name': 'timeofday',
'type': sqltypes.TIME,
'nullable': True,
'default': None,
},
{
'name': 'string',
'type': sqltypes.String,
'nullable': True,
'default': None,
},
]
self.assertEqual(result, expected)