⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ndbdictionary.cpp

📁 mysql-5.0.22.tar.gz源码包
💻 CPP
📖 第 1 页 / 共 2 页
字号:
}voidNdbDictionary::Index::addColumnName(const char * name){  const Column c(name);  addColumn(c);}voidNdbDictionary::Index::addIndexColumn(const char * name){  const Column c(name);  addColumn(c);}voidNdbDictionary::Index::addColumnNames(unsigned noOfNames, const char ** names){  for(unsigned i = 0; i < noOfNames; i++) {    const Column c(names[i]);    addColumn(c);  }}voidNdbDictionary::Index::addIndexColumns(int noOfNames, const char ** names){  for(int i = 0; i < noOfNames; i++) {    const Column c(names[i]);    addColumn(c);  }}voidNdbDictionary::Index::setType(NdbDictionary::Index::Type t){  m_impl.m_type = t;}NdbDictionary::Index::TypeNdbDictionary::Index::getType() const {  return m_impl.m_type;}voidNdbDictionary::Index::setLogging(bool val){  m_impl.m_logging = val;}bool NdbDictionary::Index::getLogging() const {  return m_impl.m_logging;}NdbDictionary::Object::StatusNdbDictionary::Index::getObjectStatus() const {  return m_impl.m_status;}int NdbDictionary::Index::getObjectVersion() const {  return m_impl.m_version;}/***************************************************************** * Event facade */NdbDictionary::Event::Event(const char * name)  : m_impl(* new NdbEventImpl(* this)){  setName(name);}NdbDictionary::Event::Event(const char * name, const Table& table)  : m_impl(* new NdbEventImpl(* this)){  setName(name);  setTable(table);}NdbDictionary::Event::Event(NdbEventImpl & impl)  : m_impl(impl) {}NdbDictionary::Event::~Event(){  NdbEventImpl * tmp = &m_impl;  if(this != tmp){    delete tmp;  }}void NdbDictionary::Event::setName(const char * name){  m_impl.setName(name);}const char *NdbDictionary::Event::getName() const{  return m_impl.getName();}void NdbDictionary::Event::setTable(const Table& table){  m_impl.setTable(table);}void NdbDictionary::Event::setTable(const char * table){  m_impl.setTable(table);}const char*NdbDictionary::Event::getTableName() const{  return m_impl.getTableName();}voidNdbDictionary::Event::addTableEvent(const TableEvent t){  m_impl.addTableEvent(t);}voidNdbDictionary::Event::setDurability(EventDurability d){  m_impl.setDurability(d);}NdbDictionary::Event::EventDurabilityNdbDictionary::Event::getDurability() const{  return m_impl.getDurability();}voidNdbDictionary::Event::addColumn(const Column & c){  NdbColumnImpl* col = new NdbColumnImpl;  (* col) = NdbColumnImpl::getImpl(c);  m_impl.m_columns.push_back(col);}voidNdbDictionary::Event::addEventColumn(unsigned attrId){  m_impl.m_attrIds.push_back(attrId);}voidNdbDictionary::Event::addEventColumn(const char * name){  const Column c(name);  addColumn(c);}voidNdbDictionary::Event::addEventColumns(int n, const char ** names){  for (int i = 0; i < n; i++)    addEventColumn(names[i]);}int NdbDictionary::Event::getNoOfEventColumns() const{  return m_impl.getNoOfEventColumns();}NdbDictionary::Object::StatusNdbDictionary::Event::getObjectStatus() const{  return m_impl.m_status;}int NdbDictionary::Event::getObjectVersion() const{  return m_impl.m_version;}void NdbDictionary::Event::print(){  m_impl.print();}/***************************************************************** * Dictionary facade */NdbDictionary::Dictionary::Dictionary(Ndb & ndb)  : m_impl(* new NdbDictionaryImpl(ndb, *this)){}NdbDictionary::Dictionary::Dictionary(NdbDictionaryImpl & impl)  : m_impl(impl) {}NdbDictionary::Dictionary::~Dictionary(){  NdbDictionaryImpl * tmp = &m_impl;    if(this != tmp){    delete tmp;  }}int NdbDictionary::Dictionary::createTable(const Table & t){  return m_impl.createTable(NdbTableImpl::getImpl(t));}intNdbDictionary::Dictionary::dropTable(Table & t){  return m_impl.dropTable(NdbTableImpl::getImpl(t));}intNdbDictionary::Dictionary::dropTable(const char * name){  return m_impl.dropTable(name);}intNdbDictionary::Dictionary::alterTable(const Table & t){  return m_impl.alterTable(NdbTableImpl::getImpl(t));}const NdbDictionary::Table * NdbDictionary::Dictionary::getTable(const char * name, void **data) const{  NdbTableImpl * t = m_impl.getTable(name, data);  if(t)    return t->m_facade;  return 0;}void NdbDictionary::Dictionary::set_local_table_data_size(unsigned sz){  m_impl.m_local_table_data_size= sz;}const NdbDictionary::Table * NdbDictionary::Dictionary::getTable(const char * name) const{  return getTable(name, 0);}voidNdbDictionary::Dictionary::invalidateTable(const char * name){  DBUG_ENTER("NdbDictionaryImpl::invalidateTable");  NdbTableImpl * t = m_impl.getTable(name);  if(t)    m_impl.invalidateObject(* t);  DBUG_VOID_RETURN;}voidNdbDictionary::Dictionary::removeCachedTable(const char * name){  NdbTableImpl * t = m_impl.getTable(name);  if(t)    m_impl.removeCachedObject(* t);}intNdbDictionary::Dictionary::createIndex(const Index & ind){  return m_impl.createIndex(NdbIndexImpl::getImpl(ind));}int NdbDictionary::Dictionary::dropIndex(const char * indexName,				     const char * tableName){  return m_impl.dropIndex(indexName, tableName);}const NdbDictionary::Index * NdbDictionary::Dictionary::getIndex(const char * indexName,				    const char * tableName) const{  NdbIndexImpl * i = m_impl.getIndex(indexName, tableName);  if(i)    return i->m_facade;  return 0;}voidNdbDictionary::Dictionary::invalidateIndex(const char * indexName,                                           const char * tableName){  DBUG_ENTER("NdbDictionaryImpl::invalidateIndex");  NdbIndexImpl * i = m_impl.getIndex(indexName, tableName);  if(i) {    assert(i->m_table != 0);    m_impl.invalidateObject(* i->m_table);  }  DBUG_VOID_RETURN;}voidNdbDictionary::Dictionary::removeCachedIndex(const char * indexName,					     const char * tableName){  NdbIndexImpl * i = m_impl.getIndex(indexName, tableName);  if(i) {    assert(i->m_table != 0);    m_impl.removeCachedObject(* i->m_table);  }}const NdbDictionary::Table *NdbDictionary::Dictionary::getIndexTable(const char * indexName, 					 const char * tableName) const{  NdbIndexImpl * i = m_impl.getIndex(indexName, tableName);  NdbTableImpl * t = m_impl.getTable(tableName);  if(i && t) {    NdbTableImpl * it = m_impl.getIndexTable(i, t);    return it->m_facade;  }  return 0;}intNdbDictionary::Dictionary::createEvent(const Event & ev){  return m_impl.createEvent(NdbEventImpl::getImpl(ev));}int NdbDictionary::Dictionary::dropEvent(const char * eventName){  return m_impl.dropEvent(eventName);}const NdbDictionary::Event *NdbDictionary::Dictionary::getEvent(const char * eventName){  NdbEventImpl * t = m_impl.getEvent(eventName);  if(t)    return t->m_facade;  return 0;}intNdbDictionary::Dictionary::listObjects(List& list, Object::Type type){  return m_impl.listObjects(list, type);}intNdbDictionary::Dictionary::listObjects(List& list, Object::Type type) const{  return m_impl.listObjects(list, type);}intNdbDictionary::Dictionary::listIndexes(List& list, const char * tableName){  const NdbDictionary::Table* tab= getTable(tableName);  if(tab == 0)  {    return -1;  }  return m_impl.listIndexes(list, tab->getTableId());}intNdbDictionary::Dictionary::listIndexes(List& list,				       const char * tableName) const{  const NdbDictionary::Table* tab= getTable(tableName);  if(tab == 0)  {    return -1;  }  return m_impl.listIndexes(list, tab->getTableId());}const struct NdbError & NdbDictionary::Dictionary::getNdbError() const {  return m_impl.getNdbError();}// printersNdbOut&operator<<(NdbOut& out, const NdbDictionary::Column& col){  const CHARSET_INFO *cs = col.getCharset();  const char *csname = cs ? cs->name : "?";  out << col.getName() << " ";  switch (col.getType()) {  case NdbDictionary::Column::Tinyint:    out << "Tinyint";    break;  case NdbDictionary::Column::Tinyunsigned:    out << "Tinyunsigned";    break;  case NdbDictionary::Column::Smallint:    out << "Smallint";    break;  case NdbDictionary::Column::Smallunsigned:    out << "Smallunsigned";    break;  case NdbDictionary::Column::Mediumint:    out << "Mediumint";    break;  case NdbDictionary::Column::Mediumunsigned:    out << "Mediumunsigned";    break;  case NdbDictionary::Column::Int:    out << "Int";    break;  case NdbDictionary::Column::Unsigned:    out << "Unsigned";    break;  case NdbDictionary::Column::Bigint:    out << "Bigint";    break;  case NdbDictionary::Column::Bigunsigned:    out << "Bigunsigned";    break;  case NdbDictionary::Column::Float:    out << "Float";    break;  case NdbDictionary::Column::Double:    out << "Double";    break;  case NdbDictionary::Column::Olddecimal:    out << "Olddecimal(" << col.getPrecision() << "," << col.getScale() << ")";    break;  case NdbDictionary::Column::Olddecimalunsigned:    out << "Olddecimalunsigned(" << col.getPrecision() << "," << col.getScale() << ")";    break;  case NdbDictionary::Column::Decimal:    out << "Decimal(" << col.getPrecision() << "," << col.getScale() << ")";    break;  case NdbDictionary::Column::Decimalunsigned:    out << "Decimalunsigned(" << col.getPrecision() << "," << col.getScale() << ")";    break;  case NdbDictionary::Column::Char:    out << "Char(" << col.getLength() << ";" << csname << ")";    break;  case NdbDictionary::Column::Varchar:    out << "Varchar(" << col.getLength() << ";" << csname << ")";    break;  case NdbDictionary::Column::Binary:    out << "Binary(" << col.getLength() << ")";    break;  case NdbDictionary::Column::Varbinary:    out << "Varbinary(" << col.getLength() << ")";    break;  case NdbDictionary::Column::Datetime:    out << "Datetime";    break;  case NdbDictionary::Column::Date:    out << "Date";    break;  case NdbDictionary::Column::Blob:    out << "Blob(" << col.getInlineSize() << "," << col.getPartSize()        << ";" << col.getStripeSize() << ")";    break;  case NdbDictionary::Column::Text:    out << "Text(" << col.getInlineSize() << "," << col.getPartSize()        << ";" << col.getStripeSize() << ";" << csname << ")";    break;  case NdbDictionary::Column::Time:    out << "Time";    break;  case NdbDictionary::Column::Year:    out << "Year";    break;  case NdbDictionary::Column::Timestamp:    out << "Timestamp";    break;  case NdbDictionary::Column::Undefined:    out << "Undefined";    break;  case NdbDictionary::Column::Bit:    out << "Bit(" << col.getLength() << ")";    break;  case NdbDictionary::Column::Longvarchar:    out << "Longvarchar(" << col.getLength() << ";" << csname << ")";    break;  case NdbDictionary::Column::Longvarbinary:    out << "Longvarbinary(" << col.getLength() << ")";    break;  default:    out << "Type" << (Uint32)col.getType();    break;  }  // show unusual (non-MySQL) array size  if (col.getLength() != 1) {    switch (col.getType()) {    case NdbDictionary::Column::Char:    case NdbDictionary::Column::Varchar:    case NdbDictionary::Column::Binary:    case NdbDictionary::Column::Varbinary:    case NdbDictionary::Column::Blob:    case NdbDictionary::Column::Text:    case NdbDictionary::Column::Bit:    case NdbDictionary::Column::Longvarchar:    case NdbDictionary::Column::Longvarbinary:      break;    default:      out << " [" << col.getLength() << "]";      break;    }  }  if (col.getPrimaryKey())    out << " PRIMARY KEY";  else if (! col.getNullable())    out << " NOT NULL";  else    out << " NULL";  if(col.getDistributionKey())    out << " DISTRIBUTION KEY";  return out;}const NdbDictionary::Column * NdbDictionary::Column::FRAGMENT = 0;const NdbDictionary::Column * NdbDictionary::Column::FRAGMENT_MEMORY = 0;const NdbDictionary::Column * NdbDictionary::Column::ROW_COUNT = 0;const NdbDictionary::Column * NdbDictionary::Column::COMMIT_COUNT = 0;const NdbDictionary::Column * NdbDictionary::Column::ROW_SIZE = 0;const NdbDictionary::Column * NdbDictionary::Column::RANGE_NO = 0;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -