CREATE (or REPLACE) procedure_definition | function definition
A manual I read says to use the function CREATE or REPLACE function, but my function will not compile with one of these. It compiles only when I use the FUNCTION itself. The CREATION or replacement is no longer used in Oracle 10 g?Thank you
Rich75 wrote:
I tried in SQL * more and it worked for me too, but I usually use SQL Navigator. That's where I got the error.I'm pretty new to Oracle, so I probably don't understand some things too well. I realized that when I created the function in SQL * Plus, it appeared in SQL Navigator under functions. I created this function in a package, so I think it's a little different than the creation of a global function.
Published by: Rich75 on January 27, 2010 10:02
Yes, OK if you create a function inside a package, then you do not have to give create or replace keywords.
Tags: Database
Similar Questions
-
Create Or Replace function error
Hello
I do the search of texts using Oracle SQL Developer: ODMiner... I imported the "WEBLOG" data into a table... These weblog data consists of the activity of users, date, time, url, etc. The first step I took was to use a function to convert the date and time I have in the data table, in a number representing the 40 minutes since 01/01/1990. I did it by dividing by 2400 (seconds in 40 minutes). The main objective is to have a period of time for the sessions.
I used the following code,
(SsnDate) CREATE or REPLACE FUNCTION
DEFAULT VARCHAR2 03/01/18 EFFECTIVE DATE,
TIME IN VARCHAR2
) RETURN NUMBER
AS
BEGIN
RETURN TRUNC ((to_date(DATE||) e '|| TIME, ' Hh: mm: DD-MM-YY ')-to_date('01-JAN-1990','DD-MON-YYYY')) * (86400/2400);
END ssnDate;
This is what appeared in the newspaper after the execution of the statement,
SsnDate compiled FUNCTION
WARNING: the execution is completed with warning
After that, I tried to create a VIEW to change the DATE and TIME with the ssnDate that was created earlier and concatenate the CS_URI_STEM (which is the accessible resource) and CS_URI_QUERY (which is the query, if any, the client was trying to perform) in a new field called WEB_LINK.
This is the code used
CREATE OR REPLACE VIEW WEBLOG_VIEWS ("C_IP", "WEB_LINK", "CS_USER_AGENT", "SESSION")
AS
SELECT ssnDate (LOG_DATE, LOG_TIME) AS "SESSION."
C_IP,
CS_USER_AGENT,
(CS_URI_STEM |'?) ' || CS_URI_QUERY) AS WEB_LINK
OF THE WEB BLOG.
Now that I got the following error...
Error from the 1 in the command line:
CREATE OR REPLACE VIEW WEBLOG_VIEWS ("C_IP", "WEB_LINK", "CS_USER_AGENT", "SESSION")
AS
SELECT ssnDate (LOG_DATE, LOG_TIME) AS "SESSION."
C_IP,
CS_USER_AGENT,
(CS_URI_STEM |'?) ' || CS_URI_QUERY) AS WEB_LINK
WEBLOG
Error in the command line: 3 column: 38
Error report:
SQL error: ORA-00923: KEYWORD not found where expected
00923 00000 - "FROM keyword not found where expected"
* Cause:
* Action:
I do not understand where I am going wrong with this... It comes to the data preparation step that requires me to prepare the data before applying the techniques of modeling or algorithms... The next step might be to group the data, based on the time of the session, ip and the user agent of each session as well as the fields web_links visited by the user of the session.
I would be really grateful for all entries on where I'm wrong and all the solutions for it!Good. Please close the message.
Concerning
Girish Sharma -
How to report o create crosstab in plsql function?
Hello
I want to create a function that question of including pivot table. What should be included, I'm using (cursor, folder,...)?
I transformed under code in link below for my project, but I didn't know where to put a block.
Example,
where I put or write the pivot block?
where can I write declare function block?
Thank you for taking the time, have a good day
-----------------------------------------------------------------------------------------
SELECT decode(GROUPING(emea) + GROUPING(lad) + GROUPING(apac) + GROUPING(nas) + GROUPING(japan), 5, 'TOTAL', kn) kn,
SUM(emea) emea,
SUM(lad) lad,
SUM(apac) apac,
SUM(nas) nas,
SUM(japan) japan,
SUM(emea) + SUM(lad) + SUM(apac) + SUM(nas) + SUM(japan) AS total
FROM ((SELECT kz.kz_name AS kn, rl.region AS re, kr.amount AS am
FROM region_lookup rl, kz_name_lookup kz, kz_reg kr
WHERE rl.region_id = kr.region_id
AND kz.kz_name_id = kr.kz_name_id)
pivot(SUM(am) FOR re IN ('EMEA' AS emea, 'LAD' AS lad, 'APAC' AS apac, 'NAS' AS nas, 'JAPAN' AS japan))) t
GROUP BY GROUPING SETS((kn, emea, lad, apac, nas, japan),())ORDER BY GROUPING(t.kn), t.kn;
You can declare a function that returns a ref cursor, then get Java to navigate the cursor until there finishes
sys_refcursor function MyCursorFunc is
vCur sys_refcursor;
Start
Open vCur for
SELECT decode (GROUPING (emea) GROUPING (FDA) + GROUPING (apac) + GROUPING (SIN) + GROUPING (japan), 5, 'TOTAL', kn) kn.
Sum (EMEA) emea,
Sum (FDA) boy,
Sum (APAC) apac,
Sum (SIN) Sin,
Sum (Japan) Japan,
Sum (EMEA) + SUM (FDA) + SUM (apac) + SUM (SIN) + SUM (japan) AS total
OF ((SELECT kz.kz_name AS kn, rl.region LIKE re, kr.amount MOD
Region_lookup rl, kz_name_lookup kz, kz_reg kr
WHERE rl.region_id = kr.region_id
AND kz.kz_name_id = kr.kz_name_id)
Pivot (Sum (AM) FOR re IN ("EMEA" IN emea, 'BOY' AS a boy, "ACPA" AS apac, "SIN" AS nas "JAPAN" JAPAN))) t
GROUP BY GROUPING SETS ((kn, emea, lad, apac, nas, japan), ())
ORDER BY GROUPING (t.kn), t.kn;
return vCur;
end;
How to call here
or
Why not just define a view?
create or replace view V_MyData as
SELECT decode (GROUPING (emea) GROUPING (FDA) + GROUPING (apac) + GROUPING (SIN) + GROUPING (japan), 5, 'TOTAL', kn) kn.
Sum (EMEA) emea,
Sum (FDA) boy,
Sum (APAC) apac,
Sum (SIN) Sin,
Sum (Japan) Japan,
Sum (EMEA) + SUM (FDA) + SUM (apac) + SUM (SIN) + SUM (japan) AS total
OF ((SELECT kz.kz_name AS kn, rl.region LIKE re, kr.amount MOD
Region_lookup rl, kz_name_lookup kz, kz_reg kr
WHERE rl.region_id = kr.region_id
AND kz.kz_name_id = kr.kz_name_id)
Pivot (Sum (AM) FOR re IN ("EMEA" IN emea, 'BOY' AS a boy, "ACPA" AS apac, "SIN" AS nas "JAPAN" JAPAN))) t
GROUP BY GROUPING SETS ((kn, emea, lad, apac, nas, japan), ())
ORDER BY GROUPING (t.kn), t.kn
/
Then in Java just run a query:
Select * from V_MyData
-
Hello
Function definition is confusing me.
I have run the statement.
Select translate ('test', 't', ' a') of double
It returns "EASA".
That means it replaces 't' by 'a '.
I have run this statement.
Select double TRANSLATE('Q12345','12345','OK')
It returns "MOK".
It replaces '12345' with 'OK '.
Now I run it,
Select double TRANSLATE('Q12345','12345','')
Returns a NULL value.
But he should have come back 'Q' right?
My understanding is incorrect?
Help me understand this
Hello
872483 wrote:
Hello
Function definition is confusing me.
If you don't understand how a built-in function, search for it in the manual of the SQL language:
https://docs.Oracle.com/database/121/SQLRF/functions231.htm#sthref2078
I have run the statement.
Select translate ('test', 't', ' a') of double
It returns "EASA".
That means it replaces 't' by 'a '.
Exactly! TRANSLATE returns a copy of its 1st argument, but with the n-th argument 2 character (' t ' in this case) changed the character n-th of the 3rd argument ("a" in this case).
The 1st character of ' t ' is ' t ' and the 1st character 'a' is 'a', then all the t are replaced by 'the
I have run this statement.
Select double TRANSLATE('Q12345','12345','OK')
It returns "MOK".
It replaces '12345' with 'OK '.
Not quite; It replaces the n-th of the argument character 2nd with character n-th of the argument in the 3rd.
The 1st character of 'Q12345' is 'Q', and the 1st character of 'OK' is 'o', then all the ' Q will be changed to ' O
[OP caught this mistake;] See response below #3. I meant "the 1st"12345"character is '1', and the 1st character of 'OK' is 'o', so all 1 will be replaced by"O ".
I made the same kind of mistake on the lines immediately below.]
The 2nd character of "Q12345" is '1', and the 2nd character of 'OK' is 'K', and change all the 1 to ' K
The 3rd character of 'Q12345' is '2', and there is no 3rd character in 'OK', so will be removed from all 2. In other words, there is no 3rd character in 'OK', there will be no 2 accordingly.
The same for the 4th, 5th and 6th characters of 'Q12345' (i.e., '3', ' 4 'and 5').
Now I run it,
Select double TRANSLATE('Q12345','12345','')
Returns a NULL value.
But he should have come back 'Q' right?
My understanding is incorrect?
Help me understand this
TRANSLATE returns NULL if any of its arguments are NULL (and "with nothing between single quotes is equivalent to NULL).
REPLACE ('Q12345', '12345', ") would return 'Q', but TRANSLATING is not identical to REPLACE.
-
Edition (or replace) a function
TLDR: I would like to change a line of code inside a function. Changes to the code and then executes the command in the FUNCTION to CREATE or REPLACE basically the same thing as editing function?
A user receives the following when running a report in Business Objects error message. Here is the error message:
ORA-06502: PL/SQL: digital error or value: number too high accuracy: ORA-06512: at "GUI. PR_OMIT', line 30: ORA-06512: at line 1:-6502
so I opened the GUI function. PR_OMIT in Oracle SQL Developer and I think I found the problem. There is a SELECT INTO statement that attempts to save a 4-digit number in a variable NUMBER (2). I just want to change it to number 4. I can just make the change and click the button run? I guess this will "CREATE or REPLACE" function - which in this case, it would replace it.>
I can just make the change and click the button run?
>
Yes - which will replace the code. This must be done so that other users do not try to run the code.For SQL Developer questions you should post in this forum
SQL Developer -
How to "end" to the function definition in SQL like?
I'm using Oracle 11 g and SQL Plus.
I'm trying to define a function and return to the SQL command prompt, but it is simply not to leave the function definition.
SQL > create function dept_count (dept_name varchar (20))
2 returns whole
3. start
4 declare entire d_count;
5. select count (*) in d_count
6 the instructor
7 where instructor.dept_name = dept_name
8 return d_count;
9 end
10;
11
12
13
14
15
16.
end 17 dept_count;
18;
19
20; <-I expect the SQL > invite here, but it is not.
What should I do? Help, please. Thank you.Try this please
. . . SQL> end ; SQL> /
-
Error: 1021: duplicate function definition.
Hi all
First of all, let me start by saying that I know almost nothing about Flash. I inherited a Web site maintenance project that has a rotating image Flash banner. I managed to get the image fade-in / fade-out properly, but now I need to make these clickable images - link images to pages in the Web site. I read a lot of posts here and went through the video tutorials. I was able to get the first image map using this AS3 action:
mars_btn.addEventListener (MouseEvent.CLICK, buttonClickHandler);
function buttonClickHandler(event:MouseEvent): void {}
navigateToURL (new URLRequest ("http://somewebsite/mars.php"));
trace ("clicked");
}However, when I try to make another clickable image using another instance of a button I get the error message:
1021: duplicate function definition.
I have a separate instance of a button with this AS3 action:
jupiter_btn.addEventListener (MouseEvent.CLICK, buttonClickHandler);
function buttonClickHandler(event:MouseEvent): void {}
navigateToURL (new URLRequest ("http://somewebsite/jupiter.php"));
trace ("clicked");
}I'm obviously not understand how I'm supposed to do this so that I don't create a duplicate function definition. Any help would be most appreciated.
If you don't know anything about AS then the easiest just to rename the methods of the Manager to unique names
mars_btn.addEventListener (MouseEvent.CLICK, MarchClickHandler);
MarchClickHandler(event:MouseEvent) function: void {}
navigateToURL (new URLRequest ("http://somewebsite/mars.php"));
trace ("clicked");
}jupiter_btn.addEventListener (MouseEvent.CLICK, jupiterClickHandler);
jupiterClickHandler(event:MouseEvent) function: void {}
navigateToURL (new URLRequest ("http://somewebsite/jupiter.php"));
trace ("clicked");
} -
Ampersand substitution in create or replace procedure statement
Hi guys,.
I wonder why my replacement ampersand works in a create or replace statement of the stored procedure.
CREATE OR REPLACE PROCEDURE UPDATE_DIM_SALES AS
Cancel the DEFINITION DimSales;
Cancel the DEFINITION FactTable;
SET DimSales = 'TESTTAB;
SET FactTable = myfact;
BEGIN
*...*
Error (5,20): PLS-00103: encountered the symbol "=" when expected as follows: =. (@ %; not null default range character)
If I assign the value with: = I get the error "invalid table" thereafter for the statemnt of INSERTION:
CREATE OR REPLACE PROCEDURE UPDATE_DIM_SALES AS
Cancel the DEFINITION DimSales;
Cancel the DEFINITION FactTable;
SET DimSales: = ' x 2';
SET FactTable: = ' x 1';
BEGIN
INSERT INTO & DimSales (column1, column2,...)
Why not the ampersand substitution work in a stored procedure?No problem with the carpet. Display. But you don't need to create and drop them again. Simply create a time and refresh just before departure if necessary. I expect the creation and updating of points of view is fast comparibly. Also access to the seller_id should be indexed.
Your original pl/sql block is slow due to several reasons. One might be that you agree to each line. Engage is an extremely slow process. He avoid as much as possible. Another part might be that you make all the changes of context of pl/sql. The obvious way to avoid this would be to BULK operations (bulk-select + Forall). It is not so difficult. The size of the collection must be limited to a lower amount.
Best way would be to measure the performance of pl/sql parts using a tool such as DBMS_PROFILER. Then you can decide what part is slow and must be granted.
A simple insert could be faster. Did you test that?
example not tested
INSERT /*+append */ INTO &DimSales (K_Sales,REG,BVL,DS, VS,RS,GS,VK) (SELECT trim(leading '0' from RS||GS) ,REG, BVL,DS, VS,RS,GS,VK from &FactTable f join &testsales s on f.SellerNo =s.Seller_No; commit;
You can run the other issues, but this is generally the fastest approach. Try to avoid the separate if possible. This requires a sort and will slow down the insert of a lot.
Published by: Sven w. on November 30, 2010 17:10
-
Need help to create a conditional LOV function
First off the coast to let put me the warning that I am not the right Wick informed in PL/SQL. I need to use the LOV conditional for a list of selection based on the user's role in this application.
I use the example of samples of the Dene - link: [http://apex.oracle.com/pls/otn/f?p=31517:120:2954663700615140:NO]
I created the 2 types required and tested the function with a simple select query and LOV works.
However, I need the function to return values based on the user role. I know, it's probably the ugliest pl/sql, you may have seen yet ;) I hope that you guys can decipher the logic that I use. Obviously, this code does not validate.
You guys could help me with this?
-VinodCREATE OR REPLACE FUNCTION return_art_lov_fn RETURN art_table_type AS v_data art_table_type := art_table_type (); BEGIN IF EXISTS (SELECT '1'FROM GBL_PEOPLE, GBL_ACCESS WHERE upper(gbl_people.userid) = upper(app_user) AND gbl_people.person_id = gbl_access.person_id and gbl_access.art_role = 9) THEN FOR c IN (SELECT reverse_name, person_id FROM gbl_people) LOOP v_data.EXTEND; v_data (v_data.COUNT) := art_rectype (c.person_id, c.reverse_name); END LOOP; ELSE FOR c IN (select reverse_name,person_id from GBL_PEOPLE where upper(userid) = upper(APP_USER) and current_flag is not null union select reverse_name,person_id from GBL_PEOPLE where mgr_person_id =(select person_id from GBL_PEOPLE where upper(userid) = upper(APP_USER) and current_flag is not null) and current_flag is not null) LOOP v_data.EXTEND; v_data (v_data.COUNT) := art_rectype (c.person_id, c.reverse_name); END LOOP; ENDIF; RETURN v_data; END;
Published by: user4908943 on December 10, 2009 16:37
Published by: user4908943 on December 10, 2009 16:40
Published by: user4908943 on December 10, 2009 16:41
Published by: Jeremy on December 11, 2009 04:34
-
TDMS Create or Replace returns an error
This example using FPGA (towards the end of the page):
http://zone.NI.com/DevZone/CDA/tut/p/ID/11198#toc4
Step #26 under FPGA section implements the open or create TDMS files.
It always returns error #7 of the PDM create or replace VI. When you create a new file, it should not return error "file not found".
You are receving error 7 the path of the file that you specify. Make sure you use the correct path to the file. If you still have problems is an article in the knowledge base that may shed more light on what goes wrong.
http://digital.NI.com/public.nsf/allkb/BBCAD1AB08F1B6BB8625741F0082C2AF?OpenDocument
Kind regards
David has.
-
When I try to copy pictures from my computer to a Lexar removable I get this message. "Cannot create or replace family photos. Access is denied. Make sure that the disk is not full or write protected and this file is not currently in use. Please help, but keep it simple that I am barely computer literate
Just a guess... but maybe you copied too
files in the directory root of the card. (Root directory
simply means level 1 with no folder)Remove files from the media, and then try again.
For example I just tested a 1 GB SD card and the
maximum number of files I can copy to the root
Directory is 180. If I add a file more I get a dialog box
who says: "cannot copy IMG_4321; The directory
or file cannot be created. And if I try to add a file
before removing a file to make room for it... I have
Get the following message: "unable to create the folder.
"New folder" failed to create the directory or file.If I make space by deleting files and add empty
files to the card... I can copy as many files as I have
here in the files (up to the limit of memory of)
the card).I don't know if you noticed but most digital
Cameras to create folders with 100 photos per folder.
They do not image files in the root directory
of the card. -
How to create a user-defined function?
is there a substitute for the exe instsrv and srvany in Vista?
I don't know what means your post, so here's how to create a user-defined function:
1) click Start
(2) select "Control Panel".
(3) select "system and maintenance".
4) click on "Administrative Tools".
5) click on "Task Scheduler."
(6) click on "create task" (right in the list pane under) "Actions") "
"(7) opened in the general tab it will choose if it only works when the account that is used to implement is connected, or ' if that user is logged in or not" (leave the box ' do not store the... "empty password)
(8) always in the general tab, check the box 'run with highest privileges '. (This will ensure that no program can block)
(9) type a name for the task (in the general tab)
(10) to set the job to run an awhile, use the "triggers" tab, if you want to set a task runs after xx min. temps_inactivite, choose the 'conditions' tab, then choose the desired time.
(12) click on the 'actions' tab click on 'new '. in the program/script line, search for and select the program you want to run, and then click Open.
13) click OK in the window "create a task".
14) click OK again and you are done.
I hope this helps. -
Synonym of ALTER with Create or replace synonym
Oracle 9i Release 2 database
I need to change the thesaurus during execution to point to a new owner of the table. But I'm running into errors of "insufficient privileges".
SQL> select grantee,owner,table_name,privilege from dba_tab_privs 2 where table_name IN ('OE4PNFGETDATA','OEBGGETDATA','OEGETDATA'); GRANTEE OWNER TABLE_NAME PRIVILEGE ------------- --------- ----------------- ----------- OEMUSER OEM2 OE4PNFGETDATA EXECUTE OEMUSER OEM2 OEBGGETDATA EXECUTE OEMUSER OEM2 OEGETDATA EXECUTE OEMUSER OEM1 OEBGGETDATA EXECUTE OEMUSER OEM1 OEGETDATA EXECUTE OEMUSER OEM1 OE4PNFGETDATA EXECUTE SQL> sho user USER is "OEMUSER" SQL> select synonym_name,table_owner,table_name from user_synonyms ; SYNONYM_NAME TABLE_OWNER TABLE_NAME ------------------------------ ------------------------------ ------------------------------ OE4PNFGETDATA OEM1 OE4PNFGETDATA OEBGGETDATA OEM1 OEBGGETDATA OEGETDATA OEM1 OEGETDATA
I need to change the owner of the table to OEM2. Using create or replace synonym in a procedure:
CREATE OR REPLACE PROCEDURE oemuser.p_switch_users ( i_nonactive_user IN VARCHAR2 , o_msg OUT VARCHAR2 ) AS v_synonym_name VARCHAR2(30) ; v_table_owner VARCHAR2(30) := i_nonactive_user ; v_table_name VARCHAR2(30) ; v_sql VARCHAR2(255); BEGIN FOR rec IN ( select synonym_name, table_owner, table_name from user_synonyms ) LOOP v_synonym_name := rec.synonym_name ; v_table_name := rec.table_name ; v_sql := 'CREATE OR REPLACE SYNONYM ' || v_synonym_name || ' FOR ' || v_table_owner || '.' || v_table_name ; EXECUTE IMMEDIATE v_sql ; END LOOP ; o_msg := 'Completed successfully' ; EXCEPTION WHEN others THEN o_msg := 'Error_Stack...' || Chr(10) || DBMS_UTILITY.FORMAT_ERROR_STACK ; RAISE ; END p_switch_users ; / var o_msg varchar2(512) var i_user varchar2(10) exec :i_user := 'OEM2' exec p_switch_users(:i_user,:o_msg) ORA-01031: insufficient privileges ORA-06512: at "OEMUSER.P_SWITCH_USE RS", line
I have not tried to drop the synonyms and re - create, but I expect the same error. Any suggestions?
Hello
the owner of the procedure should the privilege of creating its own synonyms if i_nonactive_user is defined on its own behalf (this case has no interest), and he has the privilege to create ANY synonym in other... At first glance, I would say that this is not a good idea.
Note: you can also save a job: no need to redefine a synonym to point to the same thing, so I would limit synonyms selected in the loop:
FOR rec IN (SELECT u.synonym_name, u.table_owner, u.table_name
U user_synonyms
WHERE u.table_owner! = v_table_owner
)
Best regards
Bruno Vroman
-
Create or replace Index supported?
I could type "create or replace index...". "and found that it worked. Then I went looking for it or not "or replace" is supported the option for 'create index' and can't find anything that tells me that it is. I don't want to use it if it is not supported. Anyone know? I'm using Oracle Database 11 g Release 11.2.0.3.0.
Thank you
Meredith
There are some RDBMS that support certain types of
logic for the index - but Oracle is not among them. CREATE or REPLACE can be used for certain types of objects, but not for the index. -
Creating a shopping cart function
Hello
Right... This is a bit of an odd.
I need to create a shopping basket function in muse, I won't take all payments, all payments are made by phone (we handle contracts business phone, broadband, etc then you do a credit check before you can authorize a contract). Then... I want people to be able to add items to their "shopping cart" and proceed through an order page where they fill all their details and "place order." Their details then get submitted to us and the products they have chosen - no payment is taken.
I am really struggling to find a solution, does anyone know what whether that might work? Or is it is not possible and I should start looking for a different solution.
The best solution I have found so far is to create a subdomain and using something like shopify as my e-commerce store but just have produced £0.00?
Any ideas are appreciated.
Thanks guys,.
Leo
HI Leo,
Some Associates thread
Re: How to create a shop online by using Muse?
Adding a shopping cart for muse
Add a shopping cart on a Muse site
Let me know if you have any question.
Maybe you are looking for
-
Hello, I'm bored of the small rectangle orange in the upper left corner of my screen of mozilla firefox, now that I have the new version, where I could click and he'd come down with some selections menu, being 'share' and I could send a link to the p
-
Satellite L20-155 BIOS restore
The BIOS on my laptop seems to be corrupted. I checked section Service and support but my (Dutch) is no longer on the current list.Download laptop L20 refer to different models than my - 155. Who can help me with a proper BIOS of restoring files, or
-
How to use my screen LCD of Qosmio F30 for play on the Playstation 2 using video and the port?
I plugged my Playstation 2 to my laptop using the plug-in software component video port on the right side of my computer. Everything is in place, but how to move the LCD screen to display Playstation 2? Please instruct me. Thank you.
-
Re: Satellite L750 - the speakers cut out after a few minutes
My laptop speakers cut out after a few minutes, if I play music from iTunes, a DVD or talking on Skype - ideas please someone?
-
I just installed Comcast Ultra and I am able to get above 40 MB download speed when I connect a PC directly to the cable modem. When I used my netgear router speed fell to 10 MB, I'm looking at a new router. The netger is limited to 10 MB due to th