当前位置: 首页>>代码示例>>C++>>正文


C++ Sql::Execute方法代码示例

本文整理汇总了C++中Sql::Execute方法的典型用法代码示例。如果您正苦于以下问题:C++ Sql::Execute方法的具体用法?C++ Sql::Execute怎么用?C++ Sql::Execute使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Sql的用法示例。


在下文中一共展示了Sql::Execute方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: ForceInsertRowid

String ForceInsertRowid(const String& insert, Sql& cursor)
{
    if(!cursor.Execute(insert + " returning ROWID into ?%s"))
        throw SqlExc(cursor.GetSession());
    if(!cursor.Fetch())
        throw Exc(t_("FETCH internal error (ForceInsertRowid)"));
    ASSERT(!IsNull(cursor[0]));
    return cursor[0];
}
开发者ID:ultimatepp,项目名称:mirror,代码行数:9,代码来源:util.cpp

示例2: Force

void SqlStatement::Force(Sql& cursor) const {
    ASSERT(text.GetCount());
    if(!cursor.Execute(*this))
        throw SqlExc(cursor.GetSession());
}
开发者ID:guowei8412,项目名称:upp-mirror,代码行数:5,代码来源:SqlStatement.cpp

示例3: Execute

bool SqlStatement::Execute(Sql& cursor) const {
    ASSERT(text.GetCount());
    return cursor.Execute(*this);
}
开发者ID:guowei8412,项目名称:upp-mirror,代码行数:4,代码来源:SqlStatement.cpp

示例4: ForceExecute

void ForceExecute(const String& s, Sql& cursor)
{
    if(!cursor.Execute(s))
        throw SqlExc(cursor);
}
开发者ID:ultimatepp,项目名称:mirror,代码行数:5,代码来源:util.cpp

示例5: Run

void DlgSqlExport::Run(Sql& cursor, String command, String tablename)
{
	Title(Nvl(tablename, t_("SQL query")) + t_(" export"));
	object_name <<= tablename;
	if(!cursor.Execute(command)) {
		Exclamation(NFormat(t_("Error executing [* \1%s\1]: \1%s"), command, cursor.GetLastError()));
		return;
	}
	for(int i = 0; i < cursor.GetColumns(); i++) {
		const SqlColumnInfo& sci = cursor.GetColumnInfo(i);
		String type;
		switch(sci.valuetype) {
			case BOOL_V:
			case INT_V: type = t_("integer"); break;
			case DOUBLE_V: type = t_("real number"); break;
			case STRING_V:
			case WSTRING_V: type = t_("string"); break;
			case DATE_V: type = t_("date"); break;
			case TIME_V: type = t_("date/time"); break;
			case /*ORA_BLOB_V*/-1: type = t_("BLOB"); break;
			case /*ORA_CLOB_V*/-2: type = t_("CLOB"); break;
			default: type = FormatInt(sci.valuetype); break;
		}
		columns.Add(sci.name, sci.valuetype, sci.width, 1);
	}
	static String cfg;
	LoadFromString(*this, cfg);
	SyncUI();
	while(TopWindow::Run() == IDOK)
		try {
			String out_table = ~object_name;
			String delim;
			switch((int)~delimiters) {
				case DELIM_TAB: delim = "\t"; break;
				case DELIM_SEMICOLON: delim = ";"; break;
			}
			Vector<int> out;
			String colstr;
			String title;
			for(int i = 0; i < columns.GetCount(); i++)
				if(columns.Get(i, 3)) {
					out.Add(i);
					String cname = cursor.GetColumnInfo(i).name;
					colstr << (i ? ", " : "") << cname;
					if(i) title << delim;
					title << cname;
				}
			if(out.IsEmpty()) {
				throw Exc(t_("No columns selected!"));
				continue;
			}
			String rowbegin, rowend;
			int fmt = ~format;
			FileSel fsel;
			String ext;
			switch(fmt) {
				case FMT_TEXT: {
					rowend = "";
					ext = ".txt";
					fsel.Type(t_("Text files (*.txt)"), "*.txt");
					break;
				}
				case FMT_SQL: {
					if(identity_insert)
						rowbegin << "set identity_insert " << out_table << " on ";
					rowbegin << "insert into " << out_table << "(" << colstr << ") values (";
					rowend = ");";
					ext = ".sql";
					fsel.Type(t_("SQL scripts (*.sql)"), "*.sql");
					break;
				}
			}
			fsel.AllFilesType().DefaultExt(ext.Mid(1));
			if(!IsNull(recent_file))
				fsel <<= ForceExt(recent_file, ext);
			if(!fsel.ExecuteSaveAs(t_("Save export as")))
				continue;
			recent_file = ~fsel;
			FileOut fo;
			if(!fo.Open(recent_file)) {
				Exclamation(NFormat(t_("Error creating file [* \1%s\1]."), recent_file));
				continue;
			}
			if(fmt == FMT_TEXT)
				fo.PutLine(title);
			Progress progress(t_("Exporting row %d"));
			while(cursor.Fetch()) {
				String script = rowbegin;
				for(int i = 0; i < out.GetCount(); i++) {
					Value v = cursor[out[i]];
					switch(fmt) {
						case FMT_TEXT: {
							if(i)
								script.Cat(delim);
							if(IsString(v) && quote) {
								String s = v;
								script << '\"';
								for(const char *p = s, *e = s.End(); p < e; p++)
									if(*p == '\"')
										script.Cat("\"\"");
//.........这里部分代码省略.........
开发者ID:radtek,项目名称:lister,代码行数:101,代码来源:SqlObjectTree.cpp


注:本文中的Sql::Execute方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。