April 9th, 2009 — 3:21am
System.Runtime.InteropServices.COMException:
The types of the parameter field and parameter field current values are not compatible.
“crystal reports” bir uygulamada bu hatayı alıyorsak. Parametrenin türünü doğru vermemiş olabiliriz.
Datetime olarak tanımlı bi parametreye string değer gönderiyorsak bu hatayı alabiliyoruz.
ParameterValues currentParameterValues = new ParameterValues();
//*** FirstDate
string prmtr_FirstDate = "baslangic";
ParameterDiscreteValue prmtrDiscrete_FirstDate = new ParameterDiscreteValue();
prmtrDiscrete_FirstDate.Value = MyFirstDate.Date;//.ToString("dd/MM/yyyy");
currentParameterValues.Add(prmtrDiscrete_FirstDate);
ParameterFieldDefinitions prmtrFieldDefs_FirstDate
= rpt.DataDefinition.ParameterFields;
ParameterFieldDefinition prmtrField_FirstDate
= prmtrFieldDefs_FirstDate[prmtr_FirstDate];
prmtrField_FirstDate.ApplyCurrentValues(currentParameterValues);
Comment » | Csharp - C#
April 4th, 2009 — 3:18pm
Google kendine özel serverlar tasarlayıp kullanıyor, oyüzden çok daha hızlı… Google’ın hikayesi kitabında okumuş ve çok etkilenmiştim. Bugün böyle bişey duymak şaşırtıcı değil tabi adamlar zaten dünyanın en çok açılan sayfası özel bişey yapsınlar … ama buna bugünkü duruma gelmeden karar vermeleri beni etkileyen taraf.

Pek çok firma serverlarını Dell, hp, ibm gibi yerlerden alırken google kendi server’larını tasarlamak için ekipler kurmuş.
Kendine bir anakart tasarlayıp gigabyte’a ürettirmiş. (gigabyte google’ın terci ettiği marka olarak satışlarını 10 misli arttıracak bence :) )
cnet’te bir yazıda google’ın özel tasarımlı server’ının güç yönetiminin diğer data center’lardan farklı ve daha efektif bir yapı olduğu yazıyor. Kendine özel tasarladığı sistem sayesinde daha az elektrik tüketiyor.
Olayın elektrik tüketimi boyutunun yanısıra, hacim boyutuda var.
Kasanın hacmi normal bir rack ünitesinin yarısı kadar. Binlerce serverı bir araya koymak zorunda olduğunuzu düşünün… O binlerce serverın yarısı boyutunda daha az maliyetli ve daha performanslı serverlar tasarladığınızı düşünün.
Vay be google…
1 comment » | Something
April 1st, 2009 — 12:27pm
DROP TABLE emp2;
SELECT original_name,
operation,
droptime
FROM recyclebin;
flashback TABLE emp2 TO before DROP;
--external tables
--c:\deneme diye bir klasör olustur içine
--emp.dat diye dosya olustur virgülle ayrilmis
CREATE directory deneme AS 'C:\deneme';
GRANT READ WRITE ON directory deneme TO hr;
CREATE TABLE oldemp (fname char(25), lname char(25))
organization external (type oracle_loader DEFAULT directory deneme
access parameters (
records delimited BY newline
nobadfile
nologfile
FIELDS terminated BY ','
fname position (1:20) char,
lname position (22:41) char))
location ('emp.dat'))
parallel 5
reject LIMIT 200;
--type oracle_loader > sadece okuma islerinde kullaniyoruz
--type oracle_datapump > import export islerinde datapump kullancagiz
--meta data sorgulari
SELECT * FROM dictionary WHERE table_name LIKE '%TABLE%';
SELECT * FROM dict;
SELECT * FROM user_tables;
SELECT * FROM user_objects;
SELECT * FROM user_views;
SELECT * FROM user_tab_columns;
SELECT * FROM all_tables;
SELECT * FROM dba_tables;
--performansla ilgili meta data gelir
SELECT * FROM v$database;
SELECT * FROM v$instance;
SELECT * FROM user_tab_comments;
comment ON TABLE employees IS 'Employee information';
UPDATE dept
SET manager_id = DEFAULT
WHERE departmen_id=10;
INSERT ALL
INTO sal_history VALUES(empid,hiredate,sal)
INTO mgr_history VALUES(empid,mgr,sal)
SELECT employee_id empid, hire_date hiredatei salary sal, manager_id mgr
FROM employees
WHERE employee_id > 200;
INSERT ALL
when hiredate < '01-JAN-95' THEN
INTO emp_history VALUES(empid,hiredate,sal)
when comm IS NOT NULL then
INTO emp_sales VALUES(empid,comm,sal)
SELECT employee_id empid, hire_date hiredatei salary sal, commission_pct comm
FROM employees;
INSERT first
when hiredate < '01-JAN-95' THEN
INTO emp_history VALUES(empid,hiredate,sal)
else
INTO emp_sales VALUES(empid,comm,sal)
SELECT employee_id empid, hire_date hiredatei salary sal, commission_pct comm
FROM employees;
merge INTO emp a USING (employees) b
ON (a.employee_id == b.employee_id)
when matched then UPDATE SET
a.first_name = b.first_name,
a.last_name = b.last_name,
......
DELETE WHERE (b.commission_pct IS NOT NULL)
when NOT matched then
INSERT VALUES (b.employee_id,b.first_name,b.last_name....);
UPDATE emp3 SET salary = salary * 1.30
WHERE employee_id =107;
commit;
--salary alaninda yapilan degisiklikleri görebiliriz
SELECT salary FROM emp3
version BETWEEN scn minvalue AND maxvalue
WHERE employee_id = 107;
--5 dakika öncesini göster
SELECT salary FROM emp3 AS of timestamp sysdate-5/1440
WHERE employee_id =100;
ALTER session SET time_zone = '-2:00';
ALTER system SET nls_date_format = 'DD-MON-YYYY HH24:MI:SS';
SELECT dbtimezone, sessiontimezone, current_date,
current_timestamp, localtimestamp
FROM dual;
SELECT extract(year FROM sysdate) FROM dual;
SELECT tz_offset('US/Eastern') FROM dual;
SELECT from_tz(timestamp '2000-07-12 08:00:00','Australia/North') FROM dual;
SELECT to_timestamp('2000-07-12 08:00:00','YYYY-MM-DD HH:MI:SS') FROM dual;
SELECT hire_date, to_yminterval('01-02'), to_dsinterval('100 10:00:00')
FROM employees;
UPDATE employees e
SET department_name = (SELECT department_name
FROM departments d
WHERE d.department_id == e.department_id);
SELECT employee_id, last_name
FROM employees e
ORDER BY (SELECT department_name
FROM departments d
WHERE e.department_id = d.department_id);
SELECT employee_id, last_name
FROM employees OUTER
WHERE EXISTS (SELECT 'X'
FROM employees
WHERE manager_id = OUTER.employee_id);
SELECT employee_id, last_name
FROM employees OUTER
WHERE NOT EXISTS (SELECT 'X'
FROM employees
WHERE manager_id = OUTER.employee_id);
UPDATE emp3 e
SET department_name = (SELECT department_name
FROM departments d
WHERE e.department_id = d.department_id);
DELETE FROM emp3 e
WHERE employee_id = (SELECT employee_id
FROM emp_history
WHERE employee_id = e.employee_id);
WITH summary AS
(SELECT d.department_name dname,
SUM(e.salary) total_dep
FROM departments d,
employees e
WHERE e.department_id = d.department_id GROUP BY d.department_name)
SELECT dname,
total_dep
FROM summary
WHERE total_dep >
(SELECT SUM(total_dep) *1 / 8
FROM summary)
ORDER BY total_dep DESC
Comment » | Sql