/// <summary> /// 查询条件 /// </summary> /// <param name="sqlTable">数据库表格操作工具</param> /// <param name="sqlStream">SQL表达式流</param> /// <param name="query"></param> internal unsafe void WriteWhere(Table sqlTable, CharStream sqlStream, ref SelectQuery <modelType> query) { if (!Where.IsWhereTrue) { sqlStream.AddSize(6 * sizeof(char)); int length = sqlStream.Length; sqlTable.Client.GetSql(Where.Expression, sqlStream, ref query); if (length == sqlStream.Length) { sqlStream.Data.CurrentIndex -= 6 * sizeof(char); } else { byte *where = (byte *)(sqlStream.Char + length); *(uint *)(where - sizeof(uint)) = 'e' + (' ' << 16); *(uint *)(where - sizeof(uint) * 2) = 'e' + ('r' << 16); *(uint *)(where - sizeof(uint) * 3) = 'w' + ('h' << 16); } } }