public PropertyDescriptorParam(DbCommandParam p) : base(p.Name, new Attribute[] { new WebServerMemberAttribute(), new ReadOnlyInProgrammingAttribute(), new DescriptionAttribute("Output parameter") }) { _param = p; }
private void listBox1_SelectedIndexChanged(object sender, EventArgs e) { int n = listBox1.SelectedIndex; if (n >= 0) { DbCommandParam p = listBox1.Items[n] as DbCommandParam; if (p != null) { propertyGrid1.SelectedObject = p; } } }
public DbParameterList(ParameterList parameters) { _ps = parameters; if (_ps != null) { _pp = new DbCommandParam[_ps.Count]; for (int i = 0; i < _ps.Count; i++) { _pp[i] = new DbCommandParam(_ps[i]); } } else { _ps = new ParameterList(); } }
private void btNew_Click(object sender, EventArgs e) { int n = 1; string nm = "@p1"; while (true) { bool bFound = false; for (int i = 0; i < listBox1.Items.Count; i++) { DbCommandParam p = listBox1.Items[i] as DbCommandParam; if (p != null) { if (string.Compare(nm, p.Name, StringComparison.OrdinalIgnoreCase) == 0) { bFound = true; break; } } } if (bFound) { n++; nm = string.Format(CultureInfo.InvariantCulture, "@p{0}", n); } else { break; } } DbCommandParam pNew = new DbCommandParam(new EPField()); pNew.Name = nm; if (Results == null) { Results = new DbParameterListExt(); } Results.Add(pNew); pNew.AfterNameChange += DialogCommandParameters_AfterNameChange; n = listBox1.Items.Add(pNew); listBox1.SelectedIndex = n; }
void DatabaseExecuter_DataSizeChange(object sender, EventArgs e) { if (_plist != null && _dataSizes != null) { DbCommandParam dp = sender as DbCommandParam; if (dp != null) { for (int i = 0; i < _plist.Count; i++) { if (string.CompareOrdinal(dp.Name, _plist[i].Name) == 0) { if (i < _dataSizes.Length) { _dataSizes[i] = dp.DataSize; } break; } } } } }
public void Add(DbCommandParam p) { if (p != null) { if (_ps == null) { _ps = new ParameterList(); } _ps.Add(p.Field); if (_pp == null) { _pp = new DbCommandParam[] { p }; } else { DbCommandParam[] pp = new DbCommandParam[_pp.Length + 1]; _pp.CopyTo(pp, 0); pp[_pp.Length] = p; _pp = pp; } OnAddedParameter(p); } }
public void CreateActionPhpScript(string objectName, string methodName, StringCollection code, StringCollection parameters, string returnReceiver) { string connName = GetConnectionCodeName(); if (string.CompareOrdinal(methodName, "ExecuteWithParameterValues") == 0) { if (_sql != null && connect != null) { code.Add("$GLOBALS[\"debugError\"] = '';\r\n"); code.Add("$msql = new JsonSourceMySql();\r\n"); code.Add(string.Format(CultureInfo.InvariantCulture, "$msql->SetCredential($this->{0});\r\n", connName)); code.Add("$msql->SetDebug($this->DEBUG);\r\n"); // string sql; string[] sqlParams; List <string> inputParams = new List <string>(); List <string> outputParams = new List <string>(); if (this.IsStoredProc) { StringBuilder sb = new StringBuilder(); sb.Append("call "); sb.Append(_sql.SQL); sb.Append("("); DatabaseExecuter de = this as DatabaseExecuter; DbParameterList ps = de.Parameters; if (ps != null && ps.Count > 0) { ParameterDirection[] pds = de.Param_Directions; for (int i = 0; i < ps.Count; i++) { if (i > 0) { sb.Append(","); } ParameterDirection pd = ParameterDirection.Input; if (pds != null && pds.Length > i) { pd = pds[i]; } switch (pd) { case ParameterDirection.Input: inputParams.Add(ps[i].Name); sb.Append(" ? "); break; case ParameterDirection.InputOutput: outputParams.Add(ps[i].Name); sb.Append(string.Format(CultureInfo.InvariantCulture, " @{0} ", ps[i].Name)); break; case ParameterDirection.Output: outputParams.Add(ps[i].Name); sb.Append(string.Format(CultureInfo.InvariantCulture, " @{0} ", ps[i].Name)); break; } } sqlParams = inputParams.ToArray(); } else { sqlParams = new string[] { }; } sb.Append(")"); sql = sb.ToString(); } else { sql = _sql.SQL; sqlParams = EasyQuery.GetParameterNames(sql, connect.NameDelimiterBegin, connect.NameDelimiterEnd); if (sqlParams != null) { for (int i = 0; i < sqlParams.Length; i++) { sql = sql.Replace(sqlParams[i], "?"); } } } code.Add(string.Format(CultureInfo.InvariantCulture, "$sql = \"{0} \";\r\n", sql)); code.Add("$ps = array();\r\n"); if (this.Parameters != null) { for (int i = 0; i < sqlParams.Length; i++) { int k = this.Parameters.GetIndex(sqlParams[i]); if (k < 0) { throw new ExceptionLimnorDatabase("Query Parameter [{0}] not found", sqlParams[i]); } DbCommandParam dp = this.Parameters[k]; code.Add("$p = new SqlClientParameter();\r\n"); code.Add(string.Format(CultureInfo.InvariantCulture, "$p->name = '{0}';\r\n", dp.Name)); code.Add(string.Format(CultureInfo.InvariantCulture, "$p->type = '{0}';\r\n", ValueConvertor.OleDbTypeToPhpMySqlType(dp.Type))); code.Add(string.Format(CultureInfo.InvariantCulture, "$p->value = {0};\r\n", parameters[k])); code.Add("$ps[] = $p;\r\n//\r\n"); } } if (outputParams.Count > 0) { StringBuilder sb2 = new StringBuilder(); sb2.Append("SELECT "); for (int i = 0; i < outputParams.Count; i++) { if (i > 0) { sb2.Append(","); } sb2.Append(string.Format(CultureInfo.InvariantCulture, "@{0} AS {0} ", outputParams[i])); } string s2 = string.Format(CultureInfo.InvariantCulture, "$qry{0}", Guid.NewGuid().GetHashCode().ToString("x", CultureInfo.InvariantCulture)); code.Add(string.Format(CultureInfo.InvariantCulture, "{0} = \"{1}\";\r\n", s2, sb2.ToString())); code.Add(string.Format(CultureInfo.InvariantCulture, "$this->{0}->ExecuteWithOutputs($sql,{1},$ps,$msql);\r\n", this.Site.Name, s2)); for (int i = 0; i < outputParams.Count; i++) { code.Add(string.Format(CultureInfo.InvariantCulture, "$this->{0}->{1}=$this->{0}->outputValues['{1}'];\r\n", this.Site.Name, outputParams[i])); } } else { code.Add(string.Format(CultureInfo.InvariantCulture, "$this->{0}->ExecuteNonQuery($sql,$ps,$msql);\r\n", this.Site.Name)); } if (!string.IsNullOrEmpty(returnReceiver)) { code.Add(string.Format(CultureInfo.InvariantCulture, "{0}=$this->{1}->errorMessage;\r\n", returnReceiver, this.Site.Name)); } code.Add(string.Format(CultureInfo.InvariantCulture, "$this->SetServerComponentName('{0}');\r\n", this.Site.Name)); } } }
protected override void OnAddedParameter(DbCommandParam p) { p.CanChangeName = true; p.BeforeNameChange += DbParameterListExt_BeforeNameChange; }
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value) { if (value is string) { string data = value as string; if (!string.IsNullOrEmpty(data)) { string[] ss = data.Split('|'); DbParameterListExt ps = new DbParameterListExt(); for (int i = 0; i < ss.Length; i++) { if (!string.IsNullOrEmpty(ss[i])) { string[] ss2 = ss[i].Split(';'); if (ss2.Length > 1) { EPField f = new EPField(); DbCommandParam p = new DbCommandParam(f); if (!string.IsNullOrEmpty(ss2[0])) { if (!ss2[0].StartsWith("@", StringComparison.Ordinal)) { f.Name = string.Format(CultureInfo.InvariantCulture, "@{0}", ss2[0]); } else { f.Name = ss2[0]; } if (!string.IsNullOrEmpty(ss2[1])) { f.OleDbType = (OleDbType)Enum.Parse(typeof(OleDbType), ss2[1]); if (ss2.Length > 2) { int n; if (int.TryParse(ss2[2], out n)) { f.DataSize = n; } if (ss2.Length > 3) { p.Direction = (ParameterDirection)Enum.Parse(typeof(ParameterDirection), ss2[3]); if (ss2.Length > 4) { f.SetValue(ss2[4]); } } } ps.Add(p); } } } } } return(ps); } else { return(new DbParameterListExt()); } } return(base.ConvertFrom(context, culture, value)); }
public PropertyDescriptorDbParam(string name, Attribute[] attrs, DbCommandParam parameter) : base(name, attrs) { _param = parameter; }
protected virtual void OnAddedParameter(DbCommandParam p) { }
public PropertyDescriptorValue(string name, Attribute[] attrs, Type type, DbCommandParam owner) : base(name, attrs) { _type = type; _owner = owner; }